2010-06-14 24 views
6

यूनिक्स में नया वातावरण चर बनाने के लिए कैसे करें और इसे किसी प्रोग्राम में उपयोग करें ??????यूनिक्स में नया वातावरण चर कैसे बनाएं ....?

+0

पैक्स के रूप में कहा, यह खोल पर निर्भर करता है। – Alan

उत्तर

6

खोल पर निर्भर करता है। bash में, आप उपयोग कर सकते हैं:

export myvar=xyz 

जो चर सेट है और यह अन्य कार्यक्रमों के लिए उपलब्ध होगी।

आप एक प्रोग्राम की एक मंगलाचरण के लिए इसे सेट करना चाहते हैं, तो आप उपयोग कर सकते हैं:

myvar=xyz ./myprog 

यह myprog प्रक्रिया के लिए निर्धारित है, लेकिन यह बाहर निकल जाता है नहीं के बाद होगा।

1

सेटेंव (3) और getenv (3) फ़ंक्शंस देखें।

12

आप बता सकते हैं कि आप ps -o comm= -p $$ द्वारा कौन सा खोल चला रहे हैं - मुझे लगता है कि यह अधिक या कम सार्वभौमिक है। तो, पार्टी और कुछ इसी तरह के गोले ... में

आप एक विशिष्ट रन के लिए चर बनाने के लिए चाहते हैं, तो आप कर सकते हैं

MYVAR=value the_command_that_needs_myvar 

आप एक पूरे खोल सत्र के लिए यह बनाना चाहते हैं (यानी । जब तक आप लॉग आउट):

export MYVAR=value 

... और फिर आप चला सकते हैं:

the_command_that_needs_myvar 

... यो के रूप में रूप में कई बार आपको उस सत्र के दौरान पसंद है, और यह अब भी MYVAR को value मान के रूप में देखेगा।

यदि आप इसे अपने लिए सेट करना चाहते हैं, तो अपने सभी लॉगिन सत्रों के लिए, इसे ~/.profile में रखें।

कृपया ध्यान दें कि बैश की प्रारंभिकरण फ़ाइलें एक बड़ी बड़ी डब्ल्यूटीएफ हो सकती हैं। इस पर निर्भर करता है कि यह नेटवर्क पर, स्थानीय स्तर पर, और sh या bash के रूप में लागू किया गया है या नहीं, यह ~/.bashrc, ~/.profile और ~/.bash_profile के कुछ संयोजन को चुनिंदा रूप से पढ़ेगा। विवरण के लिए bash मैन पेज के FILES अनुभाग पढ़ें।

यदि आप इसे हर उपयोगकर्ता के लिए सेट करना चाहते हैं, हर बार जब वे लॉग इन करते हैं, तो इसे /etc/profile फ़ाइल में डाल दें (हालांकि /etc/environment भी है, मुझे यकीन नहीं है कि यह कितनी व्यापक रूप से उपयोग किया जाता है।)।

कुछ और विवरणों के लिए प्रश्न "How to set environment variable for everyone under my linux system?" पर भी देखें।

(, खबरदार इस सलाह के कुछ अगर तुम, या अन्य उपयोगकर्ताओं, बैश, डैश, csh, ksh, आदि का उपयोग पर निर्भर करती है ... लेकिन यह सबसे उपयोग के मामलों के लिए काम करना चाहिए।)

+0

दरअसल, सॉर्ट करना कि/etc/पर्यावरण,/etc/profile, ~/.profile, ~/.kshrc, ~/.cshrc, ~/.bash_profile, ~/.bash_login, ~/.bashrc और सभी का उपयोग करना है या नहीं दिल की बेहोशी के लिए अन्य संभावनाएं _not_ नहीं हैं :-) – paxdiablo

+0

यह मुझे [यूनिक्स हैटर की हैंडबुक] (http://www.art.net/~hopkins/Don/unix-haters/handbook.html) के बारे में सोचता है - निश्चित रूप से बुरे पुराने दिनों से बचे हुए डब्ल्यूटीएफरी। मैंने व्यक्तिगत 'bash' कॉन्फ़िगरेशन फ़ाइलों के बारे में कुछ जोड़ा। – detly

संबंधित मुद्दे