~ / .barshrc अपेक्षा के अनुरूप काम नहीं कर रहा है


0

मेरी समझ bashrcमें हर बार एक नया खोल खोला जाता है। यह परीक्षण करने के मैं जोड़ा echo 'hello'करने के लिए bashrc

फिर भी, जब मैं एक नया खोल खोलता हूं, तो अफसोस होता है कि कोई नमस्कार नहीं है।

मैं ubuntu 12.04 पर चल रहा हूं

विज्ञापन संबंधी जानकारी :

मैं पढ़ता हूं कि bashrcअपडेट होने से पहले सभी शेल क्लाइंट को बंद करने की आवश्यकता है । मैंने उन्हें सूचीबद्ध किया ps aux | awk '{print $7}' | grep -v "?"जिसका उपयोग करके वे वापस लौट आए

TTY
tty4
tty5
tty2
tty3
tty6
tty1
pts/0
pts/0
pts/0
pts/0
pts/0

मैं इस आउटपुट को नहीं समझता। क्या मुझे bashrcअपडेट करने के लिए इन सभी को बंद करने की आवश्यकता है ?

जवाबों:


0

.bashrcकिसी भी इंटरैक्टिव बैश शेल द्वारा शुरू किया गया है (नई टर्मिनल विंडो, bashएक अन्य बैश प्रॉम्प्ट में उपयोग किया जाता है ...)। तो यह ज्यादातर के इनवोकेशन को बाहर करता है bash -c <command>, bash <somescript>और बैश इंटरप्रेटर को स्पष्ट रूप से बैश फाइलें चलाने के लिए शुरू किया जाता है।

और .bashrcअपडेट को ध्यान में रखने के लिए कोई शर्त नहीं है : किसी भी नए बैश उदाहरण से वह संस्करण दिखाई देगा जिसे आपने अभी सहेजा है।


उफ़, केवल टाइपो प्रश्न में। इस प्रकार इस मतलब यह होना चाहिए कि अगर मैं जोड़ने . /usr/local/bin/virtualenvwrapper.shके लिए ~/.bashrcइस फाइल बैश में से प्रत्येक स्टार्टअप पर चलाया जाना चाहते हैं?
मिशेल वैन ज़ुलेन

हां, हर बार जब आप कमांड प्रॉम्प्ट शुरू करते हैं।
क्लेनोइड

ठीक है, फिर भी यह काम नहीं करता है? क्या मुझे एक नया SO प्रश्न खोलना चाहिए?
मिशेल वैन ज़ुइलेन

पहले जांचें कि .bashrc वास्तव में कहा जाता है (इसे कुछ पर्यावरण चर निर्यात करें:) export BASHRCHASRUN=Yes। यदि आप उस शंख को आपके द्वारा शुरू किए गए गोले में नहीं देख सकते हैं, तो हां ... अन्यथा आश्चर्य है कि क्यों। bashrc वास्तव में आपके अन्य शेल को कॉल नहीं कर रहा है (या वह शेल क्यों नहीं चलता है)।
क्लेनोइड
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.