मैं अपने शेल को हमेशा एक निश्चित निर्देशिका में कैसे शुरू कर सकता हूं जो कि मेरी घरेलू निर्देशिका नहीं है


20

मैंने डालने की कोशिश की है

cd /Users/my_name/my_directory/structure

दोनों में .bashrcऔर .bash_loginलेकिन न तो काम करता है, अर्थात जब मैं एक नई टर्मिनल विंडो खोलता हूं तो मैं अपने घर (/ उपयोगकर्ता / my_name /) निर्देशिका में हूं।

कोई त्रुटि संदेश नहीं, बस एक नई टर्मिनल विंडो शुरू करते समय उम्मीद के मुताबिक निर्देशिका में सीडी नहीं डालनी चाहिए।

जवाबों:


5

जैसा कि गेरी ने उल्लेख किया है, .bashrcलॉगिन गोले द्वारा नहीं पढ़ा जाता है। नए टैब टर्मिनल और iTerm में डिफ़ॉल्ट रूप से लॉगिन गोले हैं। .bash_loginकेवल अगर कोई नहीं है तो पढ़ा जाता है .bash_profile

आप इसमें cdकमांड भी जोड़ सकते हैं .bash_profile


38

सबसे पहले, यदि आप पहले से ही iTerm2 का उपयोग नहीं कर रहे हैं, तो मेरा सुझाव है कि आप इस मुफ्त सॉफ्टवेयर को Terminal.app के प्रतिस्थापन के रूप में डाउनलोड करें।

ITerm Preferences में कई अन्य अतिरिक्त विशेषताओं के बीच, आप नए गोले के लिए डिफ़ॉल्ट कार्य निर्देशिका को कॉन्फ़िगर कर सकते हैं। आपको ये सेटिंग प्रोफाइल - जनरल में मिलेंगी।

iTerm डिफ़ॉल्ट कार्य निर्देशिका

यहाँ लाभ यह है कि आप एक नई विंडो खोलने के लिए एक नया टैब खोलने या यहां तक ​​कि एक नया स्प्लिट पेन बनाने के लिए अलग-अलग व्यवहार सेट कर सकते हैं। मैं व्यक्तिगत रूप से वर्तमान कार्य निर्देशिका में रहना पसंद करता हूं, उदाहरण के लिए स्प्लिट पेन को जोड़ना।

आप इसे अपने स्टार्टअप स्क्रिप्ट में भी कर सकते हैं (हालांकि मुझे iTerm समाधान क्लीनर, या कम से कम अधिक लचीला लगता है), लेकिन फिर मैं आपको ~/.bash_profileइसके बजाय उपयोग करने की सलाह देता हूं ।

~/.bashrcहै जब एक नया खोल खिड़की खोलने, और स्वचालित रूप से sourced ~/.bash_loginअगर कोई केवल प्राप्त किया जाता है ~/.bash_profileमौजूद है।


1
मैं हमेशा अपने .bashrc को अपने .bash_profile से स्रोत करता हूं इसलिए मुझे यह याद रखने की ज़रूरत नहीं है कि कहाँ से कहा जाता है।
Cajunluke

@ काजलुके मैं कुछ ऐसा ही करता हूं: github.com/gerryvdm/dotfiles
Gerry

यदि कार्यशील निर्देशिका के "निर्देशिका" क्षेत्र को संशोधित करने का कोई प्रभाव नहीं है, तो आपको संभवतः कमांड को "कमांड" से "लॉगिन शेल" ( स्रोत ) पर स्विच करने की आवश्यकता है ।
जोड़ीजो
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.