कृपया हमें स्क्रिप्ट के अधिक हिस्सों को दिखाएं और हमें बताएं कि आपको व्यक्तिगत रूप से निष्पादित करने और बस क्या करना है।
इस बीच आप चर का विस्तार करने के दोहरे उद्धरण चिह्नों का उपयोग नहीं एकल उद्धरण है: एक ही आदेश के अंत में
export PATH="/home/linux/Practise/linux-devkit/bin/:$PATH"
अर्धविराम भी अनावश्यक है।
अब तक:
su -c 'sh /path/to/script.sh'
(जो लोग इस जवाब downvote के लिए, आपको पता होना चाहिए कि ओपी स्पष्ट रूप से एक खोल की जरूरत नहीं किया गया था:
#!/bin/sh
echo "Perform Operation in su mode"
export ARCH=arm
echo "Export ARCH=arm Executed"
export PATH="/home/linux/Practise/linux-devkit/bin/:$PATH"
echo "Export path done"
export CROSS_COMPILE='/home/linux/Practise/linux-devkit/bin/arm-arago-linux-gnueabi-' ## What's next to -?
echo "Export CROSS_COMPILE done"
# continue your compilation commands here
...
su
के लिए आप के साथ चला सकते हैं स्क्रिप्ट जो एक -इंटरएक्टिव-शैल पर वैरिएबल निर्यात करेगी - और एक बार चलाने वाली शेल स्क्रिप्ट पर नहीं, जहां source
या .
का उपयोग करने के लिए कॉल करना यह अर्थहीन होगा जब तक कि आप वास्तव में एनी से स्क्रिप्ट को कॉल नहीं कर रहे हों थर्ड स्क्रिप्ट बेशक आप source
या .
का उपयोग कर सकते हैं यदि यह वास्तव में आवश्यक है, लेकिन एक और समस्या भी थी जिसे ठीक करने की आवश्यकता थी, और ऐसा लगता है कि इस संदर्भ पर वास्तविक समस्या एकल उद्धरणों का उपयोग थी।
इसे कम मत करो क्योंकि यह आपकी मदद नहीं करता है। जवाब प्रश्न के लिए था, और ओपी के लिए।
यह अगर ओपी -actually mentioned- है कि यह एक खोल स्क्रिप्ट के माध्यम से एक इंटरैक्टिव खोल पर स्थापन निर्यात योग्य वातावरण चर के लिए वास्तव में था लागू किया गया होता।)
कौन सा खोल प्रयोग कर रहे हैं (उदाहरण के लिए bash, ksh, sh) – Tom
[संभव ग्लोबल वेरिएबल BASH] के संभावित डुप्लिकेट (http://stackoverflow.com/questions/10779771/save-global-variables-bash) – tripleee
संभावित डुप्लिकेट [पर्यावरण से एक चर को निर्यात करें बिना सोर्सिंग के बैश स्क्रिप्ट] (http://stackoverflow.com/questions/16618071/export-a-variable-to-the-environment-from-a-bash-script-without-sourcing-it) –