स्थायी पथ चर


38

मैं इस /media/De Soft/mongodb/binपैथ चर को कैसे स्थायी बनाऊंगा?

हर कोई "कह रहा है export PATH=$PATH:media/De\ Soft/mongodb/binअपने को ~/.profile, या .bashrc, या .zshenvअपने खोल के आधार पर"।

मुझे नहीं पता कि क्या है ~/.profile, या .bashrc, या .zshenv। वे वास्तव में क्या करते हैं?

मैं export PATH=$PATH:my/pathअपने .profile / .bashrc / .zshenv में कैसे जोड़ूंगा?

मैं डिफ़ॉल्ट टर्मिनल के साथ 64 बिट Ubuntu 14.04 LTS का उपयोग कर रहा हूं।

जवाबों:


70

वे विन्यास फाइल हैं। एक रास्ता:

  • Ctrl + Alt + T का उपयोग करके एक टर्मिनल विंडो खोलें
  • कमांड चलाएं gedit ~/.profile
  • लाइन जोड़ें

    export PATH=$PATH:/media/De\ Soft/mongodb/bin

    नीचे और बचाने के लिए

  • लॉग आउट करें और फिर से लॉग इन करें

संपादित करें:

एक सुरक्षित तरीका उद्धरण का उपयोग करना है। ऐसा करना आवश्यक है यदि मूल में एक या अधिक निर्देशिकाएं PATHरिक्त स्थान हों। इसलिए:

export PATH="$PATH:/media/De Soft/mongodb/bin"

@GunnarHjalmarsson, क्या मुझे वास्तव में PATH var को निर्यात करने की आवश्यकता है? हो सकता है, यह किसी अन्य स्क्रिप्ट में डिफ़ॉल्ट रूप से किया गया हो? मैंने ~ / .profile और एक PATH वर द्वारा जाँच की है, लेकिन यह स्पष्ट रूप से निर्यात नहीं किया गया है: PAT = = ~ / / .Local / बिन: $ JAVA_HOME / बिन: $ PATH
yururoso

4
@ युरानोस87: नहीं, आप सही हैं; जब संशोधित करने PATHमें ~/.profile, निर्यात के बाद से, अनावश्यक है PATHपहले से ही एक वातावरण चर रहा है।
गुन्नार हेजलारसन

1
आपको लॉगआउट करने और फिर से लॉगिन करने की आवश्यकता नहीं है। का उपयोग करें source ~/.profile
तिमु

1
@timbo: यह सत्र में पहले से शुरू की गई प्रक्रियाओं (वर्तमान टर्मिनल को छोड़कर) के लिए उपलब्ध चर को उपलब्ध नहीं कराता है।
गुन्नार हेजलमरसन

1
क्या आपको स्ट्रिंग में उद्धरण चिह्न की आवश्यकता नहीं है export PATH="$PATH:/media/De\ Soft/mongodb/bin"? क्या यह वैकल्पिक है?
ब्रूनो बेंटजेन

4

टर्मिनल विंडो में निम्नलिखित टाइप करें

export PATH=/media/De\ Soft/mongodb/bin:$PATH 

टर्मिनल बंद करें और कंप्यूटर को पुनरारंभ करें। जब आप टर्मिनल में इसे टाइप करते हैं तो पथ / मीडिया / De \ Soft / mongodb / bin शामिल होना चाहिए:

echo $PATH

13
यह केवल वर्तमान टर्मिनल सत्र के लिए काम करता है। इसे प्रत्येक कंसोल लोड पर चलाने के लिए ~/.profile(या ~/.bashrcसामान्य GNU / लिनक्स डिस्ट्रो ... यहां तक ​​कि ~/.bash_profile) पर होना चाहिए।
एलेजांद्रो इवान

माना। लेकिन सिस्टम रीस्टार्ट होने पर इसे पथ चर में लोड किया जाता है।
निवेदिता वेलागलेटी

10
@NiveditaVelagaleti: नहीं, यह तब तक नहीं है जब तक कि आप इसे कॉन्फिगर फ़ाइल के माध्यम से लगातार नहीं बनाते हैं। टर्मिनल कमांड PATHलगातार संशोधित नहीं होता है ।
गुन्नार हेजलारसन

2

स्थायी रूप से बदलने के लिए PATHआपको /etc/environmentफ़ाइल में परिवर्तन करने की आवश्यकता है । संपादन से पहले बैकअप लें:

sudo cp /etc/environment /etc/environment.bak
sudo nano /etc/environment

नमूना उत्पादन:

PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games"

:नए पथ जोड़ने के लिए पथों को सीमांकित किया जाता है, x/y/zयह कहें कि यह हमारी /etc/environmentतरह दिखता है:

PATH="x/y/z:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games"
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.