Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> बाश प्रोग्रामिंग

.intputrc फाइल में लिनक्स मैक्रो और फंक्शन कीबाइंडिंग कैसे बनाएं

रीडलाइन आपको अपनी होम डाइरेक्टरी में .inputrc कॉन्फ़िगरेशन फ़ाइल को संपादित करके अपने स्वयं के कस्टम कीबाइंडिंग को मैप करने की क्षमता भी प्रदान करती है।

निम्नलिखित दो प्रकार के कस्टम कीबाइंडिंग हैं जिन्हें आप परिभाषित कर सकते हैं:

  1. मैक्रोज़
  2. कार्य

मैक्रो

आप एक कीबाइंडिंग को परिभाषित कर सकते हैं, जो निष्पादित होने पर, कर्सर की वर्तमान स्थिति में वर्णों की एक स्ट्रिंग भर देगा। ऐसा करने के लिए अपनी .inputrc कॉन्फ़िगरेशन फ़ाइल में निम्न प्रारूप के साथ एक पंक्ति जोड़ें (या फ़ाइल बनाएं यदि यह अभी तक मौजूद नहीं है):

<key combination>: "<string of characters>"

उदाहरण के लिए, मान लें कि मैं खुद को बार-बार आउटपुट को "~/debug_output.txt" फ़ाइल में रीडायरेक्ट करता हुआ पाता हूं। मैं निम्नलिखित पंक्ति जोड़कर अपने .inputrc में एक मैक्रो को परिभाषित कर सकता हूं:

Control-g: " > ~/debug_output.txt"

अब, जब भी मैं कुंजी संयोजन Control-g टाइप करता हूं, तो मेरे कर्सर के बाद रीडायरेक्ट स्टेटमेंट जोड़ा जाएगा, जिससे मैं इसे आसानी से अन्य कमांड के अंत में जोड़ सकता हूं।

मैक्रोज़ बनाते समय निम्नलिखित बातों का ध्यान रखें:

<केंद्र>
  • मैं कुंजी संयोजनों को अंग्रेजी में लिख सकता हूं (इस पर अधिक जानकारी के लिए, बैश के लिए मैन पेज देखें। "रीडलाइन की बाइंडिंग" अनुभाग खोजें)
  • मैक्रो द्वारा सम्मिलित किए जाने वाले वर्णों का क्रम दोहरे उद्धरण चिह्नों में लपेटा जाना चाहिए (")
  • कंट्रोल-जी का चुनाव मनमाना था, आप एक ऐसा संयोजन चुन सकते हैं जो आपके लिए अधिक सार्थक हो।
  • डिफ़ॉल्ट कीबाइंडिंग को ओवरराइड करना संभव है (अपनी खुद की परिभाषित करते समय इसे ध्यान में रखें)
  • कीबाइंडिंग प्रभावी होने के लिए, आपको एक नया शेल इंस्टेंस शुरू करना होगा (.inputrc कॉन्फिग फाइल शेल स्टार्टअप पर पढ़ी जाती है)

कार्य

आप एक कीबाइंडिंग भी बना सकते हैं, जो निष्पादित होने पर, एक फ़ंक्शन को कॉल करेगा। रीडलाइन चुनने के लिए बड़ी संख्या में पूर्व-निर्धारित कार्य प्रदान करता है। किसी पूर्व-निर्धारित फ़ंक्शन के लिए कुंजी संयोजन को मैप करने के लिए:

<key combination>: <function-name>

उपलब्ध पूर्व-निर्धारित कार्यों की सूची के लिए, जीएनयू रीडलाइन मैनुअल देखें।

अपने स्वयं के कस्टम फ़ंक्शंस को परिभाषित करना भी संभव है, लेकिन इसके लिए उन्हें C में लिखना आवश्यक है और यह इस ट्यूटोरियल के दायरे से बाहर है। हम इसे बाद में एक अलग ट्यूटोरियल के रूप में कवर कर सकते हैं।

एक उपयोगी पूर्व-निर्धारित फ़ंक्शन मेनू-पूर्ण है। यह एक वैकल्पिक स्वतः पूर्णता व्यवहार प्रदान करता है।

स्वतः पूर्णता के लिए डिफ़ॉल्ट व्यवहार (TAB कुंजी में मैप किया गया) या तो है:

  • आंशिक कमांड/निर्देशिका/फ़ाइल नाम भरें यदि एक एकल मिलान मौजूद है
  • 1 से अधिक मौजूद होने पर संभावित मैचों की सूची प्रदर्शित करें

मेनू-पूर्ण इसके बजाय संभावित मैचों की सूची के माध्यम से चक्र करेगा, प्रत्येक बार फ़ंक्शन को कॉल करने पर अगला संभावित मिलान भरना होगा। यह व्यवहार अच्छा हो सकता है, खासकर जब लंबे फ़ाइल नामों को स्वतः पूर्ण करना। इस व्यवहार का उपयोग करने के लिए TAB कुंजी को रीमैप करने के लिए, अपनी .inputrc फ़ाइल में निम्न पंक्ति जोड़ें।

TAB: menu-complete

ध्यान दें कि यह नया कीबाइंडिंग वर्तमान शेल में प्रभावी नहीं होगा, आपको .inputrc कॉन्फ़िगरेशन फ़ाइल को पुनः लोड करने के लिए एक नया इंस्टेंस शुरू करना होगा

इस ट्यूटोरियल में हमने सीखा है कि लिनक्स कमांड लाइन कीबाइंडिंग रीडलाइन नामक टूल द्वारा संचालित होती है। कीबाइंडिंग 2 में से 1 प्रकार की हो सकती है:

  • मैक्रो:वर्णों के अनुक्रम का विस्तार करता है
  • कार्य:एक क्रिया करता है

रीडलाइन हमें डिफ़ॉल्ट कीबाइंडिंग का एक सेट प्रदान करता है, लेकिन हमें .inputrc कॉन्फ़िगरेशन फ़ाइल में अपना स्वयं का बनाने के लिए लचीलापन भी प्रदान करता है। अंत में, सभी मौजूदा कीबाइंडिंग देखने के लिए, हम 'बाइंड' कमांड का उपयोग कर सकते हैं।

bind -p

  1. Linux में होस्ट फ़ाइल का उपयोग और संपादन कैसे करें

    यदि आपने कभी लिनक्स मशीन से कई सर्वर प्रबंधित किए हैं या किसी प्रकार की होम लैब स्थापित की है, तो आप जानते हैं कि लिनक्स में होस्ट फ़ाइल कितनी उपयोगी हो सकती है। हालाँकि, आप में से कुछ को यह भी नहीं पता होगा कि यह मौजूद है, अपने जीवन को आसान बनाने के लिए इसका लाभ उठाने का तरीका तो कम ही है। इसलिए हम

  1. Linux उपयोगकर्ता पासवर्ड को कैसे स्टोर और प्रबंधित करता है

    क्या आपने सोचा है कि लिनक्स एक बहु-उपयोगकर्ता वातावरण को कुशलतापूर्वक कैसे प्रबंधित करता है? इस लेख में हम बताते हैं कि कैसे Linux उपयोगकर्ता पासवर्ड और लॉगिन को संग्रहीत और प्रबंधित करता है। /etc/passwd फ़ाइल को एक्सप्लोर करना जब कोई उपयोगकर्ता उपयोगकर्ता नाम और पासवर्ड दर्ज करता है, तो लिनक्स / e

  1. डॉटफाइल्स - डॉटफाइल क्या है और इसे मैक और लिनक्स में कैसे बनाएं?

    डॉटफाइल महत्वपूर्ण फाइलें हैं जो एक सॉफ्टवेयर डेवलपर के रूप में आपके करियर में एक महत्वपूर्ण भूमिका निभाएंगी। सबसे पहले, वे आपको अधिक उत्पादक बनाने में मदद कर सकते हैं। लेकिन इतना ही नहीं - आप किसी भी मशीन पर अपने लिए बनाए गए उत्पादक सेटअप को प्राप्त करने में सक्षम होंगे। यह आलेख डॉटफ़ाइल्स के साथ