मैं एक सबशेल या अन्य बैश फ़ंक्शन के आउटपुट को बदलने के लिए अंतर्निहित बैश सबस्ट्रिंग का उपयोग करने का प्रयास कर रहा हूं।
निम्नलिखित आदेश zsh में काफी अच्छी तरह से काम करता है; लेकिन bad substitutionबश में एक त्रुटि के परिणामस्वरूप :
${${PWD##*/}//trunk/latest}
या
${$(basename $PWD)//trunk/latest}
आउटपुट का अंतिम फ़ोल्डर होना चाहिए $PWD, latestमेरी वर्तमान निर्देशिका द्वारा प्रतिस्थापित किया गया हैtrunk
तो /home/user/trunkबनना चाहिएlatest
क्या चर या पाइप पर भरोसा किए बिना श्रृंखला स्ट्रिंग्स के संस्करणों के लिए एक बैश बराबर है? या बैश बिल्ट-इन केवल इनपुट को एक स्ट्रिंग या एक सादे चर की अनुमति देता है?
sedकुछ चरणों में प्राप्त किया जा सकता है । लेकिन मुझे समझ नहीं आ रहा है कि क्यों