मैं export
कमांड के उपयोग को समझने की कोशिश कर रहा हूं ।
मैंने उपयोग करने की कोशिश की man export
, लेकिन इस कमांड के लिए कोई मैनुअल नहीं है।
क्या कोई मुझे export
UNIX के उपयोग को समझने में मदद कर सकता है ?
मैं export
कमांड के उपयोग को समझने की कोशिश कर रहा हूं ।
मैंने उपयोग करने की कोशिश की man export
, लेकिन इस कमांड के लिए कोई मैनुअल नहीं है।
क्या कोई मुझे export
UNIX के उपयोग को समझने में मदद कर सकता है ?
जवाबों:
जब आप किसी प्रोग्राम को निष्पादित करते हैं, तो चाइल्ड प्रोग्राम पैरेंट से अपने पर्यावरण चर का वारिस करता है। उदाहरण के लिए, यदि अभिभावक के $HOME
लिए सेट किया /root
गया है, तो बच्चे का $HOME
चर भी सेट है /root
।
यह केवल पर्यावरण चर पर लागू होता है जो निर्यात के लिए चिह्नित हैं। यदि आप कमांड-लाइन पर एक चर सेट करते हैं जैसे
$ FOO="bar"
वह चर बाल प्रक्रियाओं में दिखाई नहीं देगा। जब तक आप इसे निर्यात नहीं करते हैं:
$ export FOO
आप इन दोनों कथनों को एक ही बार में एक साथ जोड़ सकते हैं (लेकिन पुराने स्कूल में नहीं):
$ export FOO="bar"
यहां एक त्वरित उदाहरण है जो निर्यात और गैर-निर्यात किए गए चर के बीच का अंतर दिखाता है। यह समझने के लिए कि क्या हो रहा है कि sh -c
एक बच्चे के खोल प्रक्रिया का निर्माण होता है जो माता-पिता के खोल के वातावरण को विरासत में मिला है।
$ FOO=bar
$ sh -c 'echo $FOO'
$ export FOO
$ sh -c 'echo $FOO'
bar
नोट: शेल निर्मित कमांड के उपयोग पर सहायता प्राप्त करने के लिए help export
। शेल बिल्ट-इन ऐसे कमांड होते हैं जो स्वतंत्र निष्पादनयोग्य की तरह आपके शेल का हिस्सा होते हैं /bin/ls
।
यूनिक्स
आदेश एनवी, सेट और प्रिंटेनव सभी पर्यावरण चर और उनके मूल्यों को प्रदर्शित करते हैं। वातावरण चर सेट करने के लिए env और set का भी उपयोग किया जाता है और अक्सर इसे सीधे शेल में शामिल किया जाता है। Printenv का उपयोग उस चर नाम को कमांड के एकमात्र तर्क के रूप में देकर एकल चर को प्रिंट करने के लिए भी किया जा सकता है।
यूनिक्स में, निम्नलिखित कमांड का भी उपयोग किया जा सकता है, लेकिन अक्सर एक निश्चित शेल पर निर्भर होते हैं।
export VARIABLE=value # for Bourne, bash, and related shells
setenv VARIABLE value # for csh and related shells
आप इस पर एक नज़र डाल सकते हैं
VARIABLE=value; export VARIABLE
एक बार में असाइन करने और निर्यात करने के बजाय। set
सी शैल में आदेश नहीं बल्कि वातावरण चर से खोल चर के लिए है, setenv
का प्रतिपक्ष है export
। set
बॉर्न व्युत्पन्न गोले में आदेश सभी चर, न सिर्फ निर्यात (पर्यावरण) चर प्रिंट करता है। ऐतिहासिक रूप से कम से कम, एenv
कमांड शेल से अलग है (बिल्ट-इन नहीं), हालांकि इसे आसानी से बिल्ट-इन किया जा सकता है। यह पर्यावरण को एक विशिष्ट कमांड के लिए सेट करता है, न कि इसे चलाने वाले शेल को।
export
bash
शेल और अन्य बॉर्न शेल वेरिएंट का एक अंतर्निहित कमांड है । इसका उपयोग बाल प्रक्रियाओं के निर्यात के लिए शेल चर को चिह्नित करने के लिए किया जाता है।