Ubuntu टर्मिनल, मैं "टैब" (स्वतः पूर्ण) फ़ाइल नाम cmd- शैली (चक्र विकल्प) कैसे करूँ?


13

मूल रूप से मैं ubuntu टर्मिनल को कार्यात्मक रूप से बदलना चाहता हूं, ताकि मैं सभी विकल्पों को चक्रित कर सकूं जब मैं टैब (सीएमडी लाइन पंक्ति पर) और विकल्पों को सूचीबद्ध नहीं कर सकता क्योंकि यह डिफ़ॉल्ट रूप से है?

Im बैश का उपयोग करके, ubuntu 9.04। मुझे ".bashrc" में कुछ संभावनाएं दिखाई देती हैं, लेकिन वहां कोई ऐसा व्यक्ति होना चाहिए जिसने इस समस्या को पहले ही हल कर दिया हो?


क्या आप जानते हैं कि यदि आप दो बार टैब दबाते हैं तो आपको सभी संभावित पूर्णताओं की सूची मिल गई है, है न?
वाव

@vava: आप बैश के संभावित-पूर्ण कमांड का वर्णन कर रहे हैं, जो आमतौर पर डिफ़ॉल्ट व्यवहार है। सवाल यह है कि इस व्यवहार को बैश के मेनू-पूर्ण कमांड द्वारा प्रदान किए गए व्यवहार के साथ कैसे बदला जाए।
Las3rjock सेप

@ las3rjock, मुझे पता है, इसीलिए मैंने एक टिप्पणी छोड़ दी, जवाब नहीं। यह केवल संभव है कि ओपी उस सुविधा के बारे में नहीं जानता है क्योंकि यह साइकिल मोड से बेहतर है।
वाव

@vava: ओपी संभावित-पूर्ण व्यवहार का वर्णन करता है और बताता है कि वह इसे मेनू-पूर्ण व्यवहार के साथ बदलना चाहता है।
Las3rjock

@vava मुझे पता है कि टर्मिनल कैसे काम करता है, और मैं इस बहुत कष्टप्रद व्यवहार को बदलना चाहता हूं।
डैनियल टी। मैग्यूसन

जवाबों:


16

इस पृष्ठ पर टिप्पणियों के अनुसार , डाल

bind '"\t":menu-complete'

अपने में .bashrcचक्रीय टैब को पूरा करने में सक्षम होना चाहिए।

अधिक जानकारी के लिए बैश संदर्भ मैनुअल का खंड 8.4.6 देखें ।


धन्यवाद, बहुत अच्छा लगता है! - बस उस पेज पर टिप्पणी से प्यार करें "मुझे यह पता लगाने में सालों लग गए कि बैश चक्रीय टैब पूरा होने का समर्थन करता है" - हाह, सुपरयुसर जीत!
डैनियल टी। मैग्यूसन

धन्यवाद! एक बार इसे लागू करने के बाद, क्या पुराने तरीके का उपयोग करने के लिए ओवरराइड कुंजी संयोजन है? उदाहरण के लिए Shift + TAB।
ऐस

0

कुछ ऐसा जो मेरे लिए एक जीवन रक्षक है, एक गूंगी सूची दिखाने के बजाय संभावनाओं के माध्यम से साइकिल चलाना है।

जैसा कि बैश readlineअपने ऑटो-पूरा करने के लिए उपयोग कर रहा है, निम्न पंक्तियों को इसमें जोड़ें~/.inputrc

एक बार जब आप संतुष्ट हो जाएं और अच्छी तरह से कुछ ही दिनों / सप्ताह, के लिए समाधान नीचे का परीक्षण किया है , कट और पेस्ट (कॉपी कर सकता हूँ नहीं!) ही सेटिंग से ~/.inputrcकरने के लिए /etc/inputrcजो सिस्टम-वाइड सेटिंग होती हैं, आपके सिस्टम पर सभी उपयोगकर्ताओं के लिए इसे उपलब्ध कराने (अतिथि सहित)।

कोड:

# mappings to have up and down arrow searching through history:
"\e[A": history-search-backward
"\e[B": history-search-forward
# mappings to have left and right arrow go left and right: 
"\e[C": forward-char
"\e[D": backward-char

# mapping to have [Tab] and [Shift]+[Tab] to cycle through all the possible completions:
"\t": menu-complete
"\e[Z": menu-complete-backward

फिर exitआपका टर्मिनल (या पोटीन की तरह रिमोट टर्मिनल) और इसे फिर से खोलें ...

उदाहरण:

  1. जब आप 3 फ़ाइलें: file1, file2और file3और आप टाइप करें:

    e fTabTabTab

    यह चक्र होगा:

    e file1
    e file2
    e file3
    

    और जब आप वापस जाना चाहते हैं, तो बस मारो Shift+Tab

  2. जब आप टाइप करें:

    very-complicated-command with lots of command line parameters

    और अगली बार जब आपको एक ही कमांड की आवश्यकता हो, तो आप केवल टाइप करें:

    very

    और यह आपके लिए टाइप करेगा:

    very-complicated-command with lots of command line parameters

यह आपको दोपहर के भोजन के समय को बचाएगा! ;-)

स्रोत

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.