मेरे पास कुछ पुरानी स्क्रिप्ट हैं जिन्हें मैं अपडेट करने की कोशिश करता हूं। कुछ कोड के लिए:
export X=`(echo "abc"; echo "def")`
echo $X
जो अपेक्षित आउटपुट देता है:
abc def
अब इंटरनेट मुझे बताता है कि बैकटिक्स बाहर हैं जिन्हें मुझे $()उपयोग करने की आवश्यकता है, लेकिन जब मैं कोशिश करता हूं:
export X=$((echo "abc"; echo "def"))
X सेट नहीं है और मुझे त्रुटि मिलती है:
bash: echo "abc"; echo "def": syntax error: invalid arithmetic operator (error token is ""abc"; echo "def"")
मैं क्या गलत कर रहा हूं?
`...`और$(...)वैसे भी एक उपखंड शुरू करें, इसलिए आंतरिक की(...)आवश्यकता नहीं है (एक प्रक्रिया को बर्बाद करें)। आपको$( (...); (...) )उदाहरण के लिए चीजों में स्थान की आवश्यकता होगी (जहां आंतरिक उप-भागों की आवश्यकता हो सकती है)।