किसी भीके साथ शुरू लाइन के लिए /foo
संलग्न कर देता हैएक टिप्पणी है। PATH=
PATH
वैरिएबल का मान सेट करता है, $ PATH वर्तमान मूल्य तक फैलता है, और export
शुरुआत में टर्मिनल से चलने वाले प्रोग्रामों के लिए मूल्य उपलब्ध कराता है।
मान लीजिए कि पीएटीएच का प्रारंभिक मूल्य /usr/bin:/bin
है।
export PATH=/opt/local/bin:/opt/local/sbin:$PATH
$ पथ के पिछले मूल्य के साथ $PATH
बदलें। तो ऊपर सेट PATH
/opt/local/bin:/opt/local/sbin:/usr/bin:/bin
फिर आगे चल कर,
export PATH=$PATH:/usr/local/mysql/bin
करने के लिए, पिछले मान के साथ $ पथ बदल देते हैं:
/opt/local/bin:/opt/local/sbin:/usr/bin:/bin:/usr/local/mysql/bin
बाद
export PATH=/android-sdks/platform-tools:~/android-sdks/tools:$PATH
हमारे पास
/android-sdks/platform-tools:~/android-sdks/tools:/opt/local/bin:/opt/local/sbin:/usr/bin:/bin:/usr/local/mysql/bin
और अंत में (~
एक विशेष टोकन कि आपकी होम निर्देशिका के लिए पथ से बदल दिया जाएगा है, लेकिन आप चित्र प्राप्त होगा।), के बाद
export PATH=/Users/android-sdks/platform-tools:/Users/android-sdks/tools:$PATH
हम हो
/Users/android-sdks/platform-tools:/Users/android-sdks/tools:/android-sdks/platform-tools:~/android-sdks/tools:/opt/local/bin:/opt/local/sbin:/usr/bin:/bin:/usr/local/mysql/bin
PATH
आदेश दिए गए हैं कॉम पर दर्ज लगाने के लिए प्रयोग किया जाता है और रेखा।तो अगर आप टाइप foo
, खोल निर्दिष्ट क्रम में नीचे नाम के लिए दिखाई देगा,:
/Users/android-sdks/platform-tools/foo
/Users/android-sdks/tools/foo
/android-sdks/platform-tools/foo
~/android-sdks/tools/foo
/opt/local/bin/foo
/opt/local/sbin/foo
/usr/bin/foo
/bin/foo
/usr/local/mysql/bin/foo
पथ के वर्तमान मूल्य देखने के लिए, चलाने
echo $PATH
आप के लिए नई निर्देशिका जोड़ना चाहिए PATH
की शुरुआत, या अंत में? यह हमेशा कोई फर्क नहीं पड़ता, लेकिन कभी-कभी यह करता है। यह इस बात पर निर्भर करता है कि आप कौन से स्थान सिस्टम को पहले जांचना चाहते हैं।
यदि आप डिफ़ॉल्ट में देखने से पहले अन्य निर्देशिकाओं को खोजना चाहते हैं तो आपको शुरुआत में जोड़ना चाहिए। उदाहरण के लिए, git
एक उपयोगिता है जो स्रोत कोड का प्रबंधन करने के लिए उपयोग की जाती है। अगर मैं ~/Git में git
के एक नए संस्करण को स्थापित करने और का उपयोग करें कि डिफ़ॉल्ट रूप से करना चाहता था, मुझे क्या करना चाहते हैं:
export PATH=~/git/bin:$PATH
इसका मतलब है कि ~/Git/bin/Git ओवरराइड होगा/opt/स्थानीय/bin/Git।
दूसरी ओर मैं व्यवस्थापक को git
सिस्टम-व्यापी स्थापित करना पसंद कर सकता हूं। मैं अपने स्थानीय प्रतिलिपि केवल उपयोग करना चाहते हैं जब तक व्यवस्थापक यह हर किसी के लिए उपलब्ध बनाता है, तो यह अधिक समझ में आता है:
export PATH=$PATH:~/git/bin
इस मामले ~/git/bin/git
केवल तभी /opt/local/bin/git
पहले से ही /opt/local/bin
के बाद से अस्तित्व में नहीं था इस्तेमाल किया जाएगा में पहले रास्ते में है।
बहुत से आदेश एक से अधिक स्थानों में मौजूद नहीं होंगे। उदाहरण के लिए आप my-backup-script
लिख सकते हैं और इसे /Volumes/Capsule/scripts
पर ऐप्पल टाइम कैप्सूल पर डाल सकते हैं। यह संभावना नहीं है कि संघर्ष के लिए किसी भी अन्य स्थान पर my-backup-script
नामक एक आदेश होगा।
export PATH=/Volumes/Capsule/scripts:$PATH
या
export PATH=$PATH:/Volumes/Capsule/scripts
एक बेहतर है: तो निम्न कमांड का या तो आप my-backup-script
टाइप करें और सही स्क्रिप्ट चलाने होगा? मेरी सलाह बाद वाले को करना होगा। याद रखें कि प्रत्येक आदेश के लिए सिस्टम को $PATH
में निर्देशिकाओं को खोजने की आवश्यकता होगी। अधिकांश आदेश स्थानीय सिस्टम पर होंगे, इसलिए पथ के अंत में धीमे नेटवर्क संग्रहण को रखने का सबसे अधिक अर्थ होता है।
तो कुछ लोगों को स्पष्ट रूप से प्रीपेन्ड होने पर $ PATH क्यों जोड़ना चाहिए? – Pacerier
किसी को प्रीपेन्ड करना चाहिए यदि लक्ष्य 'पथ' में उल्लिखित शेष स्थानों को खोजने से पहले एक विशिष्ट निर्देशिका को खोजना है। अगर कोई जोड़ना चुनता है, तो उनके पास अलग-अलग लक्ष्य हो सकते हैं। कुछ विवरणों के साथ उत्तर अपडेट किया गया। – GargantuChet