पूरी तरह से बैश को फिर से शुरू करें


18

वहाँ पूरी तरह से बैश और पुनः लोड .bashrcऔर फिर से शुरू करने का एक तरीका है .profile? मैं यह सुनिश्चित करना चाहता हूं कि इन फ़ाइलों को संपादित करने के बाद मेरे बदलाव ठीक से काम आए।

जवाबों:


32

क्या यह अपने आप को खुद से बदल देता है।

exec bash -l

ध्यान दें कि यह cwd या निर्यात चर जैसी चीजों को प्रभावित नहीं करेगा।


अच्छा है, लेकिन मैं विशेष रूप से यह जांचने और देखने के लिए करना चाहूंगा कि क्या मेरी PATHइच्छा के अनुसार सेट किया जा रहा है या मेरे PS1आदि
Naftuli Kay

1
बाहर निकालें execऔर आपको एक शेल मिलता है जो आपके इच्छित फ़ाइलों को स्रोत करता है। तब exitजब आप जाँच कर रहे हों।
आर्सगे

@TK: आपके द्वारा असाइन किया गया कोई भी वैरिएबल पिछले शेल से बचे हुए लोगों पर पूर्वता लेगा।
इग्नासियो वाज़केज़-अब्राम्स

तो यह मेरे बैश प्रॉम्प्ट को बदलने के लिए काम करेगा? यानी, जब भी मैं इसे चलाऊंगा, यह मेरे बैश प्रॉम्प्ट को फिर से लोड करेगा?
Naftuli Kay

जब तक आप $PS1बैश की स्टार्टअप फाइलों में सेटिंग कर रहे हैं , हां।
इग्नासियो वाज़क्वेज़-अब्राम्स

9

मैं तत्काल एक अलग विंडो / स्क्रीन पर लॉग इन करने का सुझाव देता हूं। इस तरह आपके पास अभी भी एक कार्य सत्र है अगर स्टार्टअप फ़ाइलों में आपके परिवर्तनों के साथ कुछ गलत हो जाता है। इसके अलावा आप एक स्वच्छ वातावरण के लिए सुनिश्चित हैं।

कारण: मैंने बहुत से लोगों को अपने .profile (या ऐसे) में एक सरल टाइपो के कारण खुद को सिस्टम से बाहर ताला लगाते देखा।


+10, एक साफ शेल जहां आप एडिट को बदल सकते हैं आवश्यक है।
सरदाथ्रियन - मोनिका

मैं एक डे में हूं, इसलिए यह इतना बुरा नहीं होना चाहिए, बॉहॉस हां, सावधान रहें।
Naftuli Kay

3

यदि आपका लक्ष्य बस संशोधित फ़ाइलों को फिर से पढ़ना है, तो आपको इसे पुनः आरंभ करने की आवश्यकता नहीं है। आप बस इसे स्रोत कर सकते हैं।

source filename

या

. filename # notice the dot

ध्यान दें कि यह आपको "स्वच्छ राज्य" इस अर्थ में नहीं देगा कि यह किसी भी सेट चर या परिभाषित कार्यों को परेशान नहीं करेगा ...


2
su -l yourOwnUserName

yourOwnUserNameफिर से लोड सभी सेटिंग्स के साथ उपयोगकर्ता के लिए एक नया खोल खोल देगा । यह शेल-स्वतंत्र है, क्योंकि यह सिस्टम सेटिंग्स को संदर्भित करता है, न कि आपके विशिष्ट शेल को। यह कुछ सिस्टम-वाइड सेटिंग्स को भी लोड bash -lकरता है जो (उपयोगकर्ता समूहों की तरह) नहीं करता है।


महत्वपूर्ण नोट: "एक ताजा शेल" का मतलब है आपके मौजूदा शेल के भीतर एक शेल, इसलिए आप केवल घोंसले के गोले हैं, अपने मूल को प्रतिस्थापित नहीं कर रहे हैं। स्वीकृत उत्तर ठीक से करता है।
अंडरस्कोर_ड
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.