2009-02-18 21 views
61

बैश में alt + numeric दबाएं और आपको मिलता है (arg [numeric]) वह क्या है?बैश में alt + numeric दबाएं और आपको मिलता है (arg [numeric]) वह क्या है?

(इस प्रकार का प्रश्न इंटरनेट के माध्यम से दस्तावेज़ीकरण पर सही शब्दावली के लिए "अनुमान लगाने" की कोशिश करने के बजाय मानव से पूछने के लिए बेहतर है)।

+0

यदि आपके पास '~/.inputrc' में 'keymap vi' सेट है, तो' Esc + Digit' को मारना आपको उसी मोड पर ले जाता है, जैसे कि vi कमांड पुनरावृत्ति के लिए तैयारी करना (लेकिन आप vi bindings का उपयोग नहीं कर सकते उनसे, केवल बदसूरत emacs वाले :-() –

उत्तर

41

अवधि आप के लिए गूगल चाहते हैं:

"readline arguments" 

यह, उदाहरण के लिए, को बढ़ावा मिलेगा इस chapter from the bash reference manual:

आप आदेशों ReadLine के लिए सांख्यिक तर्क पारित कर सकते हैं। कभी-कभी तर्क के रूप में कार्य करता है दोहराएं, अन्य बार यह महत्वपूर्ण तर्क का संकेत है। यदि आप एक आदेश के लिए नकारात्मक तर्क देते हैं जो आमतौर पर आगे की दिशा में कार्य करता है, तो वह आदेश पिछड़े दिशा में कार्य करेगा। उदाहरण के लिए, लाइन की शुरुआत में पाठ को वापस मारने के लिए, आप 'एम-सी-के' टाइप कर सकते हैं।

आदेश के लिए संख्यात्मक तर्क पारित करने का सामान्य तरीका आदेश से पहले मेटा अंक टाइप करना है। यदि टाइप किया गया पहला 'अंक' एक ऋण चिह्न ('-') है, तो तर्क का संकेत नकारात्मक होगा। तर्क प्राप्त करने के लिए एक मेटा अंक टाइप करने के बाद, आप शेष अंक टाइप कर सकते हैं, और फिर कमांड टाइप कर सकते हैं। उदाहरण के लिए, सी-डी कमांड को 10 का तर्क देने के लिए, आप 'एम -1 1 सी-डी' टाइप कर सकते हैं, जो इनपुट लाइन पर अगले दस वर्णों को हटा देगा।

है कि काम करने के लिए, आप को पता है जहां मेटा कुंजी मैप किया गया है है: कभी कभी यह Alt है, कभी कभी यह Esc, शांत कंप्यूटर एक समर्पित मेटा कुंजी है;)

+1

है संख्यात्मक तर्कों का उपयोग करके संख्यात्मक वर्णों को दोहराने का एक तरीका है? उदाहरण के लिए, मैं 128 शून्य ('0') लिखना चाहता था, मुझे लगता है कि मैं Alt + 128 तब 0 लिख सकता हूं, लेकिन यह मुझे '(arg: 1280' (भले ही मैं Alt कुंजी को छोड़ दूं)। मैं इस तंत्र का उपयोग करके संख्याओं को दोहराऊंगा? –

+0

@ विक्टर: दिलचस्प प्रश्न। मैं इसे रीडलाइन के साथ करने का कोई तरीका नहीं सोच सकता। आप शायद कुछ ऐसे से बेहतर हो '$ (perl -e 'प्रिंट" 0 "एक्स 128 ') ' – hop

3

मैं नहीं जानता लेकिन जब आप alt कर + संख्यात्मक और फिर आप एक चरित्र दबाते हैं, तो आप संख्या caracters मिल जाएगा: (आर्ग: 123) + एक -> 123 बार "एक"

+7

आप नहीं जानते, फिर भी आप जानते हैं?% - | – hop

8

इस प्रयास करें । प्रकार Alt , फिर टी, तो हिट दर्ज करें।

स्नैज़ियर HTML का उपयोग करने के लिए संपादित किया गया।

+8

आपके लिए क्या होता है? मुझे कुछ भी नहीं मिल रहा है। –

+0

चार 't' अक्षर डाले गए हैं। –

7

यह अगले आदेश को दोहराता है जो कई बार Emacs के समान होता है। जैसे एम-1-0 सी-पी 10 इतिहास वस्तुओं को वापस ले जाता है। एम -4 सी-एच बैकस्पेस चार वर्ण, एम -3 एम-टी पिछले शब्द को तीन बार आगे बढ़ाता है, और इसी तरह। यहां मैं एम - का उपयोग करता हूं जिसका अर्थ है Alt कुंजी के लिए "मेटा", जैसा कि बैश में कस्टम है।

1

bash manual section - मूल रूप से रीडलाइन कमांड को दोहराने का तरीका, या उन्हें उलटाना।

14

संख्यात्मक वर्णों को दोहराने के लिए - उदा।128 शून्य है, तो निम्न मारा:

मेटा कुंजी + 1 Ctrl + V

5

मैं जानता हूँ कि यह पहले से ही स्वीकार किए जाते हैं जवाब है लेकिन मैं कुछ useful examples मिला जो वर्णों की सरल दोहराव से अलग अतिरिक्त उपयोग भी प्रदर्शित करता है। अंक तर्क सभी प्रकार की चीजों पर लागू हो सकते हैं। उदाहरण के लिए अनुक्रम "Alt + 3, एस्केप, बैकस्पेस" पीछे 3 शब्दों को हटा देगा।