.Bashrc और .inputrc के बीच क्या अंतर है


15

मैं यूनिक्स प्रणाली में नया हूं, और सेटिंग फाइलों में अनुकूलित कार्य और कॉन्फ़िगरेशन बनाने के लिए इसे दिलचस्प लगता है .bashrcऔर .inputrc

हालाँकि, मैं दोनों के बीच के अंतर को नहीं समझता। उदाहरण के लिए, जब मैंने उर्फ ​​बनाया, तो मैंने उन्हें अंदर डाल दिया .bashrc

Example 1: alias ...='cd ../../'

जब मैं पिछली या अगली कमांड को देखने के लिए एरो की का उपयोग करते हुए ऑपरेशन बनाता हूं, तो मैं कमांड डाल देता हूं .inputrc

Example 2: "\e[A": history-search-backward

मुझे उन्हें अलग-अलग सेटिंग फ़ाइलों में डालने की आवश्यकता क्यों है ? कैसे मैं भेद करते हैं जब डाल करने के लिए क्या कहाँ?

आपका अग्रिम में ही बहुत धन्यवाद!

जवाबों:


18

.inputrcफ़ाइल में जो सेटिंग्स होती हैं, वे सभी कार्यक्रमों को प्रभावित करती हैं जो जीएनयू रीडलाइन लाइब्रेरी का उपयोग करती हैं , न कि केवल bash.inputrcGNU Readline के लिए एक कॉन्फ़िगरेशन फ़ाइल होने के रूप में फ़ाइल के बारे में सोचें कि कैसे .bashrcएक कॉन्फ़िगरेशन फ़ाइल के लिए समान है bash

जीएनयू रीडलाइन के रूप में वर्णित है:

... अनुप्रयोगों द्वारा उपयोग के लिए फ़ंक्शन का एक सेट जो उपयोगकर्ताओं को कमांड लाइनों को संपादित करने की अनुमति देता है क्योंकि वे टाइप किए जाते हैं।

थोड़ा और स्पष्ट करने के लिए, .bashrcफ़ाइल में मौजूद सेटिंग्स केवल प्रभावित करती हैं bash। आप वैकल्पिक रूप से चलाने के लिए चाहते हैं, तो bashजीएनयू ReadLine समर्थन या उपयोग के बिना, आप आह्वान कर सकते हैं bashके साथ --noeditingइस प्रकार विकल्प: bash --noediting। आप यहांbash विकल्पों के बारे में अधिक जानकारी प्राप्त कर सकते हैं ।

अपने अंतिम प्रश्न का उत्तर देने के लिए

मैं कैसे भेद करूं कि क्या रखा जाए?

यदि आप अपने सिस्टम पर उन सभी कार्यक्रमों को प्रभावित करने का विकल्प चाहते हैं जो GNU Readline लाइब्रेरी का उपयोग करते हैं, .inputrcतो मुख्य विकल्प होगा। एल्विस, यदि आप बस अपना bashसत्र कॉन्फ़िगर करना चाहते हैं, तो .bashrcसबसे अच्छा विकल्प होगा।


साभार @aliceinpalth क्या आपका मतलब है कि GNU रीडलाइन लाइब्रेरी से संबंधित है? GNU Readline लाइब्रेरी में और क्या है?
काउंटर 10000

5
@ काउंटर 10000 इस अर्थ में, लाइब्रेरी "टूल्स का संग्रह" नहीं है (मैं देख सकता हूं कि आप ऐसा क्यों सोचते हैं) लेकिन "एक प्रकार की कार्यक्षमता जो विभिन्न टूल का उपयोग कर सकते हैं"। इस मामले में, यह एक कमांड लाइन (स्क्रॉलबैक, लाइन संपादन, और इसी तरह सहित) के साथ काम करने के लिए है। बैश शेल प्रांप्ट के लिए इसका उपयोग करता है। मेरे सामने मेरे सिस्टम पर, इसका उपयोग bc(कमांड लाइन कैलकुलेटर), xfsprogs(फाइल सिस्टम एडमिन प्रोग्राम), sqlite(एक बहुत छोटा डेटाबेस सिस्टम), lftp(कमांड लाइन ftp क्लाइंट), और बहुत कुछ के लिए भी किया जाता है।
Mattdm

1
कोई समस्या नहीं @ काउंटर 10000! मुझे मदद करने में खुशी हो रही है। @mattdm ने आपके प्रश्न का बहुत अच्छा उत्तर दिया। ये कार्यक्रम GNU Readline का उपयोग कैसे करते हैं, इसके बारे में अधिक जानने के लिए, यहाँ एक अच्छा लेखन उपलब्ध है
एलिसिनपालर्थ

1
ऐसा लगता है कि आपके उत्तर में अंतिम पैराग्राफ कम से कम गलत है। मुझे लगता है कि कुछ विकल्प हैं, जो केवल इनपुट आर्क फ़ाइल में सेट किए जा सकते हैं, इसलिए दो फाइलें पूरी तरह से "विनिमेय" नहीं हैं। मैं इस से विकल्पों को सेट करने की कोशिश की जवाब में .bashrcऔर कुछ भी नहीं हुआ। वे केवल प्रभाव में सेट किए जा रहे हैं.inputrc
user907860
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.