2009-05-20 12 views
17

मैं एक खुश BASH उपयोगकर्ता हूं। मैं एक और खोल में स्विच नहीं करना चाहता (इस मामले में जेडएसएच)।BASH रिक्त उपनाम 'सीडी'

cd /to/a/directory 

क्या सही उपनाम (या शायद मार समारोह) टाइप करने के लिए cd बिना निर्देशिका बदलने के लिए होगा:

ZSH जरूरी बिना लिखे एक निर्देशिका बदलने के लिए इस क्षमता है?

/to/a/directory 

मैं कोशिश की है:

alias ''='cd ' 
alias ""='cd ' 
alias " "='cd ' 

कोई भी विचार

मेरे ऊपर के उदाहरण पर,/के लिए/एक/निर्देशिका में जाने इस तरह से किया जाना चाहते हैं?

+8

यदि आपके पहले दो प्रयासों में एक खाली उपनाम की अनुमति थी, और यदि यह आपके इच्छित तरीके से काम करता है, तो सभी आदेश "cd" कमांड में बदल जाएंगे। –

उत्तर

30

यह version 4.0 of Bash में जोड़ा गया एक विकल्प है। आप के साथ सेट कर सकते हैं:

$ shopt -s autocd 

यह हमेशा सक्षम करने के लिए रखो कि आपके .bashrc फ़ाइल में।

+0

धन्यवाद, ऐसा लगता है कि मुझे इस पर इंतजार करना होगा: बैश: दुकान : autocd: अमान्य खोल विकल्प नाम – alfredodeza

+0

मैंने प्रश्न में संस्करण जानकारी जोड़ा, और चेंजलॉग से जुड़ा हुआ (यह धारा 3 के तहत है "बैश में नई विशेषताएं", आइटम डी) – dbr

+0

@alfredodeza ठीक है, आप 'shopt -s autocd कर सकते हैं 2>/dev/null'। फिर आप त्रुटि संदेश की परेशानी के बिना वहां आदेश रखने की संतुष्टि प्राप्त कर सकते हैं। :) – Sildoreth

5

मुझे नहीं लगता कि आप, यह वास्तव में मतलब नहीं है एक "रिक्त" अन्य नाम हैं, कर सकेंगे ..

बैश संस्करण 4.0 autocd विकल्प है, जो shopt -s autocd चलाकर सेट किया गया है जोड़ा (जैसा कि मिपाडी ने उत्तर दिया)

बैश, कष्टप्रद के पिछले संस्करणों में ऐसा कोई विकल्प नहीं है।

+0

एक तरफ ऑटोकॉइड, जाल का उपयोग करके इसे प्राप्त करने में सक्षम हो सकता है, जो बदसूरत हो सकता है, लेकिन मुझे लगता है कि यह कुछ डिग्री पर काम करेगा ... – osirisgothra