मैं कमांड लाइन
.bash_profile
से पुनः लोड कैसे कर सकता हूं ?
मुझे .bash_profile
बाहर निकलने और लॉग इन करने से परिवर्तनों को पहचानने के लिए शेल मिल सकता है , लेकिन मैं इसे मांग पर करने में सक्षम होना चाहूंगा।
मैं कमांड लाइन
.bash_profile
से पुनः लोड कैसे कर सकता हूं ?
मुझे .bash_profile
बाहर निकलने और लॉग इन करने से परिवर्तनों को पहचानने के लिए शेल मिल सकता है , लेकिन मैं इसे मांग पर करने में सक्षम होना चाहूंगा।
जवाबों:
बस टाइप करें source ~/.bash_profile
वैकल्पिक रूप से, यदि आप कीस्ट्रोक्स को सहेजना पसंद करते हैं तो आप टाइप कर सकते हैं . ~/.bash_profile
alias reload='source ~/.bash_profile && echo "File .bash_profile reloaded correctly" || echo "Syntax error, could not import the file"';
. ~/.bash_profile
बस यह सुनिश्चित करें कि आपकी वर्तमान स्थिति पर कोई निर्भरता नहीं है।
.
इस मामले में आदेश क्या है ?
.
source
कमांड के लिए केवल एक उपनाम है ।
.
से अधिक पुराना है source
है।
source
का बैश विशिष्ट कार्यान्वयन है.
.
और source
सचमुच में एक ही बात है। लिंक से: " बैश में source
डॉट / पीरियड 'का एक पर्यायवाची है .
, लेकिन पॉसिंक श में नहीं, इसलिए अधिकतम अनुकूलता के लिए अवधि का उपयोग करें।"
बस प्रकार:
. ~/.bash_profile
हालांकि, यह स्वचालित रूप से बजाय इसे आप टर्मिनल खोलने हर बार चलाने का टर्मिनल शुरू होता है, आप जोड़ सकते हैं चलाने के लिए यदि आप स्रोत के लिए चाहते . ~/.bash_profile
करने के लिए ~/.bashrc
फ़ाइल।
ध्यान दें:
जब आप एक टर्मिनल खोलते हैं, तो टर्मिनल (गैर-लॉगिन) इंटरएक्टिव मोड में बाश करना शुरू कर देता है, जिसका अर्थ है कि यह स्रोत होगा ~/.bashrc
।
~/.bash_profile
इंटरैक्टिव लॉगिन मोड में शुरू होने पर केवल बैश द्वारा खट्टा होता है । यह आमतौर पर केवल तब होता है जब आप कंसोल ( Ctrl+ Alt+ F1.. F6) पर लॉगिन करते हैं , या इसके माध्यम से कनेक्ट होते हैं ssh
।
आप इस आदेश का उपयोग उस उपयोगकर्ता के लिए ~ / .bash_profile को पुनः लोड करने के लिए भी कर सकते हैं। डैश का उपयोग करना सुनिश्चित करें।
su - username
मैं इस तथ्य को पसंद करता हूं कि आपने फ़ाइल को संपादित करने के बाद, आपको बस इतना करना है:
. !$
यह वह स्रोत है जिसे आपने अभी-अभी इतिहास में संपादित किया है। देखें बैश में धमाके डॉलर क्या है ।
cd
. .bash_profile
cd
। की कोई जरूरत नहीं ~
।
cd
- आप इसे केवल उस निर्देशिका से पुनः लोड कर सकते हैं जो आप वर्तमान में हैं:. ~/.bash_profile
यदि आप अपने वर्तमान शेल टर्मिनल के इतिहास को खोने का बुरा नहीं मानते हैं तो आप भी कर सकते हैं
bash -l
यह आपके खोल को फोर्क करेगा और बैश की एक और बच्चे की प्रक्रिया को खोल देगा। -l
पैरामीटर एक लॉगिन शेल के रूप में चलाने के लिए पार्टी बताती है, के बारे में इस वजह .bash_profile एक गैर लॉगिन खोल, अधिक जानकारी के लिए के रूप में नहीं चलेगा यह आवश्यक है यहाँ पढ़
यदि आप वर्तमान शेल को पूरी तरह से बदलना चाहते हैं, तो आप यह भी कर सकते हैं:
exec bash -l
उपरोक्त आपके वर्तमान शेल को कांटा नहीं जाएगा, बल्कि इसे पूरी तरह से बदल देगा, इसलिए जब आप टाइप exit
करेंगे तो यह आपको पिछले शेल में छोड़ने के बजाय पूरी तरह से समाप्त कर देगा।
alias bashs="source ~/.bash_profile"
अपनी बैश फ़ाइल में जोड़ें । तो आप bashs
अगली बार से कॉल कर सकते हैं
reset
याद है कि
यदि .bash_profile मौजूद नहीं है, तो आप निम्न कमांड चलाने की कोशिश कर सकते हैं:
. ~/.bashrc
या
source ~/.bashrc
इसके बजाय .bash_profile। आप bashrc के बारे में और जानकारी पा सकते हैं
मैं एक त्वरित उत्तर पोस्ट करना चाहता था जिसका उपयोग करते समय source ~/.bash_profile
या ऊपर वर्णित कार्यों का उत्तर देता है, एक बात का उल्लेख करना है कि यह केवल आपके टैब प्रोफ़ाइल को वर्तमान टैब या सत्र में पुनः लोड करता है जिसे आप देख रहे हैं। यदि आप प्रत्येक टैब / शेल पर अपनी बैश प्रोफाइल को फिर से लोड करना चाहते हैं, तो आपको उनमें से प्रत्येक में मैन्युअल रूप से इस कमांड को दर्ज करना होगा।
यदि आप iTerm काCMD⌘ShiftI उपयोग करते हैं , तो आप सभी वर्तमान टैब में कमांड दर्ज करने के लिए + + का उपयोग कर सकते हैं । टर्मिनल के लिए यह इस समस्या को संदर्भित करने के लिए उपयोगी हो सकता है ;
आपको बस टाइप करना है . ~/.bash_profile
मैं डेबियन का उपयोग करता हूं और मैं इसे exec bash
प्राप्त करने के लिए बस टाइप कर सकता हूं । मैं यह नहीं कह सकता कि क्या यह अन्य सभी वितरणों पर काम करेगा।
. .bash_profile
मैक पर अपने घर निर्देशिका के अंदर टाइपिंग करते समय काम करेंगे। 7urkm3n द्वारा दिए गए उत्तर के रूप में भी।
alias reload!=". ~/.bash_profile"
या अगर कार्यों के माध्यम से लॉग जोड़ना चाहते हैं
function reload! () {
echo "Reloading bash profile...!"
source ~/.bash_profile
echo "Reloaded!!!"
}
. ~/. bash_profile
और न हीsource ~/.bash_profile
मैं सिएरा चला रहा हूं, और कुछ समय के लिए इस पर काम कर रहा था (सभी अनुशंसित समाधानों की कोशिश कर रहा हूं)। मैं अंतत: अपने कंप्यूटर को पुनः आरंभ करने का प्रयास कर रहा था! इसने काम कर दिया
मेरा निष्कर्ष है कि कभी-कभी एक कठिन रीसेट आवश्यक होता है
alias BASHRELOAD=". ~/.bash_profile"
। यदि आप अक्सर ऐसा करते हैं, तो आप इसे बस के रूप में उर्फ कर सकते हैंbr
।