मैं .bash_profileअपनी /home/userनिर्देशिका में Ubuntu 14.04 में नहीं मिल सकता । मैंने ls -aकमांड को देखने के लिए उपयोग किया .bash_profile, लेकिन ऐसी कोई फ़ाइल नहीं है।
मैं .bash_profileअपनी /home/userनिर्देशिका में Ubuntu 14.04 में नहीं मिल सकता । मैंने ls -aकमांड को देखने के लिए उपयोग किया .bash_profile, लेकिन ऐसी कोई फ़ाइल नहीं है।
जवाबों:
उबटन का उपयोग करता है ~/.profile।
आप .bash_profileउबंटू में अपना बना सकते हैं लेकिन फिर .profileपढ़ा नहीं जाएगा।
यदि हम पढ़ते हैं। शुद्ध सामग्री:
cat ~/.profile
# ~/.profile: executed by the command interpreter for login shells.
# This file is not read by bash(1), if ~/.bash_profile or ~/.bash_login
# exists.
इसलिए के ~/.profileबजाय का उपयोग करें~/.bash_profile
vim ~/.bashrcतो. ~/.bashrc
जब एक लॉगिन शेल बैश इनवॉइस किया जाता है तो इस क्रम में इसकी कॉन्फिग फाइल्स की तलाश होगी:
[0] ~/.bash_profile
[1] ~/.bash_login
[2] ~/.profile
पहले एक को खोजने के बाद, यह दूसरों की तलाश करना बंद कर देता है इसलिए अगर .bash_profileमेरी $HOMEबैश में है तो कोई .bash_loginऔर नहीं देखेगा .profile।
इन तीन फ़ाइल नामों से, उबंटू डिफ़ॉल्ट रूप से उपयोग करता .profileहै, .bash_profileयदि आप चाहें तो इसका नाम बदल सकते हैं:
mv ~/.profile ~/.bash_profile
अब अगर हम उपयोग कर एक नया बैश खोल खोलने bash -l, su - $USER, sudo -u $USER -iया किसी अन्य आदेशों एक लॉगिन शेल के रूप में बैश चलाता है, ~/.bash_profilesourced हो जाएगी।
मैंने अब तक जो भी बात की है वह केवल बैश पर ही लागू होती है, जब आप जीयूआई से सिस्टम में लॉग इन कर रहे होते हैं, तो डिस्प्ले मैनेजर सही फाइलों को सोर्स करने के लिए जिम्मेदार होता है।
उबंटू gdm3इसके डिस्प्ले मैनेजर के रूप में उपयोग करता है , अगर हम इस पर एक नज़र डालें: /etc/gdm3/Xsessionहम देख सकते हैं कि इसके अलावा किसी भी फाइल में खटास नहीं आएगी .profile:
# First read /etc/profile and .profile
for file in /etc/profile "$HOME/.profile"; do
if [ -f "$file" ]; then
source_with_error_check "$file"
fi
done
इसलिए यदि आप लॉगिन करने के लिए GUI का उपयोग कर रहे हैं, तो फ़ाइल को .profileनाम पर रखें अन्यथा आप अपने वातावरण में कुछ चर और सेटिंग्स को याद कर सकते हैं।
मुझे लगता है कि बेहतर विकल्प के लिए एक सिमलिंक बना रहा है .profile:
ln -s ~/.profile ~/.bash_profile
अब आपका डेटा रहता है .profile, gdmकुछ भी याद नहीं करता है, .bash_profileजो वास्तव में लोड करता है , को मारता है .profile, और उनमें से प्रत्येक को संपादित करके आपको समान परिणाम मिलता है।
यदि आपके पास नहीं है .profileतो यहां से इसकी एक प्रति ले लें:
cp /etc/skel/.profile ~/.profile
या
# Remember the note above
cp /etc/skel/.profile ~/.bash_profile
man bashउबंटू में अभी भी वर्णन है कि यह पहली बार .bash_profile के लिए कैसा दिखेगा।
.bash_profile पहली बार ऐसा लगता है कि इसे पा नहीं सकते हैं (क्योंकि यह मौजूद नहीं है) फिर .bash_loginइसे फिर से नहीं ढूंढ सकता है (क्योंकि उबंटू इन दो नामों का उपयोग नहीं करता है) अंतिम रूप से इसे ढूंढता है .profileऔर हां यह है। तो अगर आप एक बनाने .bash_profileमें ~तो आप ubuntu के अधिलेखित कर रहे हैं ~/.profile, यह पार्टी कुछ भी नहीं के डिफ़ॉल्ट व्यवहार को यहां संशोधित किया गया है है।
.bash_profileइसे बनाता हूं , तो यह पढ़ा नहीं जाता है। मुझे बस एहसास हुआ कि यह इसलिए है क्योंकि उबंटू अब GUI लॉगिन शेल के रूप में 'बैश' का उपयोग नहीं करता है। इसके बजाय 'डैश' का उपयोग करता है। मुझे लगता है कि यह 18.04 के बाद से सच है।
इसका मतलब है कि फ़ाइल मौजूद नहीं है। लेकिन, आप फ़ाइल बना सकते हैं और फ़ाइल को bashनिष्पादित / स्रोत कर सकते हैं यदि bashलॉगिन शेल के रूप में लागू किया गया है। तो आप एक शेल के माध्यम से लॉग इन करें (उदाहरण के माध्यम से ssh)।
यदि आप चाहते हैं कि सामग्री हर बार आपके द्वारा टर्मिनल खोलने पर निष्पादित हो, तो आपको .bashrcइसके बजाय फ़ाइल को संशोधित करना चाहिए ।
/etc/skel/निर्देशिका से कॉपी कर सकते हैं ।
.bash_profileउबंटू अन्य कारणों पर टिप्पणियों में अनुपस्थित है (और काम नहीं करता है)।
मेरे लिए काम करने के ~/.profileबजाय उपयोग करने के लिए शीर्ष उत्तर ~/.bash_profile।
संशोधन का .bashrcकाम किया
बस:
vim ~/.bashrc
नोट: मैं Ubuntu WSL का उपयोग कर रहा हूँ।
~/.profileसिर्फ ubuntu 18.04 में डिफ़ॉल्ट रूप से लोड नहीं किया गया
अगर आपका मतलब .bashrc है तो आप इसे अपने होम फोल्डर में पाएंगे। यदि यह नहीं है, तो आप इसे / etc / skel फ़ोल्डर से अपने होम फ़ोल्डर में कॉपी कर सकते हैं।
यदि आपको इस विषय पर कुछ और जानकारी की आवश्यकता है, तो कृपया स्टेफान लिपेंस पेज पर जाएँ।
~/.profileइसके बजाय उपयोग करना चाहिए ।