यह ट्यूटोरियल आपको दिखाएगा कि Bash/शेल स्क्रिप्ट में export कीवर्ड का उपयोग करके पर्यावरण चर कैसे सेट करें।
आम तौर पर, Bash/शेल स्क्रिप्ट में घोषित वेरिएबल केवल उस चल रहे Bash/शेल स्क्रिप्ट के दायरे में मौजूद होते हैं।
उन्हें पर्यावरण चर के रूप में सेट करके कहीं और उपलब्ध कराया जा सकता है – जिसका अर्थ है कि वेरिएबल आपके सिस्टम पर स्क्रिप्ट के बाहर कमांड निष्पादित करते समय उपलब्ध होगा – उदाहरण के लिए, स्क्रिप्ट पूरा होने के बाद कमांड लाइन से वेरिएबल उपलब्ध कराना।
export कीवर्ड यह करता है – यहाँ इसका उपयोग कैसे करें।
पर्यावरण चर क्या है
एक पर्यावरण चर किसी अन्य वेरिएबल की तरह ही काम करता है, लेकिन यह हर जगह उपलब्ध होता है – स्क्रिप्ट के अंदर, कमांड लाइन पर, और अन्य चल रहे प्रोग्राम के लिए।
आपके सिस्टम में पहले से ही कई पर्यावरण चर परिभाषित हैं – उदाहरण के लिए, आपकी होम डायरेक्टरी पर्यावरण चर $HOME को पढ़कर उपलब्ध है।
आप env कमांड से वर्तमान में सेट सभी पर्यावरण चर देख सकते हैं:
env
export के साथ पर्यावरण चर सेट करें
निम्न स्क्रिप्ट, testScript.sh, एक पर्यावरण चर सेट करती है और फिर बाहर निकलती है:
#!/bin/bash export MY_ENV_VAR="Save the environment!"
अब, जब उपरोक्त स्क्रिप्ट निष्पादित की जाती है:
sh ./testScript.sh
वेरीएबल MY_ENV_VAR इसके पूरा होने के बाद उपलब्ध होता है। इसकी पुष्टि निम्न चलाकर की जा सकती है:
echo $MY_ENV_VAR
पर्यावरण चर सेट हो गया है और अब सिस्टम भर में उपलब्ध है।
printenv कमांड का उपयोग पर्यावरण चर देखने के लिए भी किया जा सकता है
printenv MY_ENV_VAR
रीबूट के बाद बने रहना
export के साथ सेट किए गए पर्यावरण चर आपके कंप्यूटर के रीबूट के बाद बने नहीं रहेंगे। किसी पर्यावरण चर को स्थायी रूप से सेट करने के लिए, इसे आपके ~/.bashrc फ़ाइल में घोषित किया जाना चाहिए।
~/.bashrc फ़ाइल एक स्क्रिप्ट है जो हर बार जब आप लॉग इन करते हैं तो चलती है। इसमें अपने export स्टेटमेंट जोड़कर, आपके पर्यावरण चर आपके द्वारा लॉग इन किए गए प्रत्येक सत्र के लिए जोड़ दिए जाएंगे।
nano ~/.bashrc
ऊपर, फ़ाइल को संपादित करने के लिए nano टेक्स्ट एडिटर का उपयोग किया जाता है। फ़ाइल के अंत में अपने export स्टेटमेंट जोड़ें, और वे रीबूट के बाद वहां होंगे:
export MY_ENV_VAR="Save the environment!"
सिस्टम-वाइड पर्यावरण चर
ये पर्यावरण चर केवल वर्तमान उपयोगकर्ता के लिए होंगे। यदि आप एक प्रशासक हैं और आप उन्हें सभी उपयोगकर्ताओं और प्रक्रियाओं के लिए उपलब्ध कराना चाहते हैं, तो इसके बजाय /etc/environment फ़ाइल में लाइनें जोड़ें:
sudo nano /etc/environment