बीच क्या अंतर है ~/.profileऔर ~/.bash_profile?
बीच क्या अंतर है ~/.profileऔर ~/.bash_profile?
जवाबों:
.profileबॉर्न शैल के लिए मूल प्रोफ़ाइल विन्यास (उर्फ, था sh)। bash, एक बॉर्न संगत शेल होने के नाते इसे पढ़ेंगे और उपयोग करेंगे। .bash_profileदूसरी ओर केवल द्वारा पढ़ा जाता है bash। यह उन कमांड के लिए अभिप्रेत है जो मानक बॉर्न शेल के साथ असंगत हैं।
.profile। जैसे, bashऔर kshलेकिन नहीं cshया नहीं tcsh। और zshदोनों shको cshअनुकूलता प्रदान करता है इसलिए यह दोनों .profileऔर .loginसाथ ही zshविशिष्ट डॉट फाइलें पढ़ेगा ।
स्टार्टअप पर मूल shखटास .profile।
bash.bash_profileपहले स्रोत की कोशिश करेगा , लेकिन अगर वह मौजूद नहीं है, तो यह स्रोत .profile1 होगा ।
ध्यान दें कि यदि bashशुरू किया गया है sh(जैसे /bin/shएक लिंक है /bin/bash) या --posixध्वज के साथ शुरू किया गया है , तो यह अनुकरण करने की कोशिश करता है sh, और केवल पढ़ता है .profile।
फुटनोट:
.bash_profile, .bash_login,.profileयह सभी देखें:
आप जानते हैं कि यूनिक्स दुनिया में कई गोले मौजूद हैं, लेकिन उनमें से अधिकांश हैं:
/bin/sh(आविष्कारक: स्टीफन बॉर्न)/bin/bash(आविष्कारक: ब्रायन फॉक्स, GNU प्रोजेक्ट के तहत) (शक्तिशाली शेल)/bin/csh(आविष्कारक: बिल जॉय, टीसीपी / आईपी स्टैक के आविष्कारक)/bin/ksh(आविष्कारक: बेल लैब्स के तहत डेविड कॉर्न)/bin/zsh(शक्तिशाली खोल)/bin/tcsh(सी शेल से प्राप्त)/bin/dash(अल्ब्यूक्विस्ट शेल (नेटबीएसडी परियोजना के तहत राख) से व्युत्पन्न) (डैश लीनी से पैदा हुआ)लेकिन आपका सवाल है ~/.bash_profileऔर ~/.profile:
जब आप UNIX मशीन में लॉग इन करते हैं, तो यह आपके होम डाइरेक्टरी में रीडायरेक्ट करता है, /etc/passwdजैसे कि अंतिम व्यवस्थापक द्वारा चुने गए शेल के अनुसार :
mohsen:x:1000:1000:Mohsen Pahlevanzadeh,,,:/home/mohsen:/bin/bash
आपका शेल चलता है, और डिफ़ॉल्ट रूप से प्रत्येक शेल में loginऔर के लिए एक सेट फ़ाइल है logout। जब आप bash पर लॉग इन करते हैं, ~/.profileतो चलाया जाता है और जब आप चलते हैं logout, ~/.bash_logoutतो चलाया जाता है।
~/.bash_historyफ़ाइल आपके इनपुट कमांड को बनाए रखती है।
~/.login जब आप लॉगिन करेंगे~/.logout जब आप लॉगआउट करते हैं~/.tcshrcके रूप में ही ~./bashrcपार्टी मेंआप चर $histfileको इतिहास फ़ाइल के नाम के $historyरूप में और चर को रखने की संख्या के रूप में सेट कर सकते हैं ।
वास्तव में यह शक्तिशाली कवच है और यदि आपको खाली समय मिलता है, तो सुनिश्चित करें कि इसमें प्रवास करें।
अन्य शेल को छोड़कर, Z शेल में कई कॉन्फ़िगरेशन फ़ाइल और आरंभीकरण फ़ाइलें हैं, बस मैं लिखता हूं:
$ZDOTDIR/.zshenv
$ZDOTDIR/.zprofile
$ZDOTDIR/.zshrc
$ZDOTDIR/.zlogin
$ZDOTDIR/.zlogout
/tmp/zsh*
/etc/zshenv
/etc/zprofile
/etc/zshrc
/etc/zlogin
नोट: अगर $ZDOTDIRपरेशान, घर सेट।
नोट: टेनेक्स सी शेल सी शेल से फोर्क किया गया था। सी शेल बीएसडी द्वारा समर्थित है। यदि आप सी भाषा प्रोग्रामिंग से परिचित हैं, तो आपको आराम करना चाहिए क्योंकि इसका सिंटैक्स समान है।
~/.login
~/.cshrc
~/.logout
नोट: csh पुराना है। इसके बजाय tcsh का उपयोग करें।
~/.profileयह बहुत शक्तिशाली खोल है और जीएनयू परियोजना के तहत पैदा हुआ है और बॉर्न शेल द्वारा फोर्क किया गया है।
~/.bash_login
~/.bash_logout
~/.bashrc
~/.bash_profile
~/.bash_history
जब आप लॉगिन करते हैं, तो रन ~/.bash_profileऔर ~/.bash_profileरन को बैश कर देता है ~/.bashrc। वास्तव ~/.bashrcमें बैश इनिशियलाइज़ेशन फ़ाइल नहीं है, क्योंकि बैश इसे नहीं चलाता है।
यह मर गया। यहां तक कि जब आप उपयोग करते हैं man sh, तो आप मैनुअल को देखते हैं dash। [सम्पादक का ध्यान: dashकेवल उबटन की तरह डेबियन और डेबियन आधारित डिस्ट्रोस पर लागू होता है।]
~/.bash_profileबैश के तहत काम करते हैं, लेकिन ~/.profileबॉर्न और कोर्न शेल के तहत काम करते हैं।
एक लॉगिन शेल केवल एक शेल होता है जिसे आप ssh या कंसोल के माध्यम से लॉगिन कर सकते हैं। एक गैर-लॉगिन शेल एक ऐसा शेल है जिसे कोई व्यक्ति लॉगिन भी नहीं कर सकता है। एक गैर-लॉगिन शेल अक्सर कार्यक्रमों / सिस्टम सेवाओं द्वारा उपयोग किया जाता है।
अपने तीसरे बिंदु के रूप में। यह सच .bashrcहै कि शेल के प्रत्येक उदाहरण पर अमल किया जाता है। हालाँकि .bash_profileइसका उपयोग केवल लॉगिन पर किया जाता है। इस प्रकार दो अलग-अलग फ़ाइलों का कारण।
.profileउन चीजों के लिए है जो विशेष रूप से बैश से संबंधित नहीं हैं, जैसे पर्यावरण चर $ PATH यह कभी भी उपलब्ध होना चाहिए। .bash_profileविशेष रूप से लॉगिन गोले या गोले लॉगिन के लिए निष्पादित किया जाता है।