कई अस्थायी उपनाम बनाना


9

मैं एक रूट उपयोगकर्ता नहीं हूं और मेरे पास वैश्विक उपनाम फ़ाइल तक पहुंच नहीं है, जिसमें सभी उपनाम बनाए गए हैं, लेकिन मैं कुछ उपनाम बनाना चाहता हूं जो केवल उस सत्र के लिए सक्रिय रहते हैं जिसमें मैं लॉग इन हूं। मैं alias x='cd /parent/child'बनाने के लिए कमांड का उपयोग करता हूं। एक उपनाम जो मुझे xसांत्वना पर टाइप करने में सक्षम करेगा और मैं डीआईआर / माता-पिता / बच्चे को बदल सकता हूं।

हालाँकि, मैं कई उपनाम बनाना चाहता हूं और मैं हर बार बनाने वाले प्रत्येक उपनाम को टाइप नहीं करना चाहता।

मैंने सभी उपनामों को एक फ़ाइल में रखने की कोशिश की = (यह 777 अनुमति देते हुए) यह उम्मीद करते हुए कि फ़ाइल को चलाने के बाद ये सभी उपनाम मेरे लॉगिन पर हर बार बनेंगे। लेकिन ऐसा नहीं हुआ।

पूर्व:

alias x='cd /parent/child'
alias y='cd /a/b/c'
alias z='tail -0f some.log'

मैंने भी इस फाइल में कोशिश की लेकिन व्यर्थ में:

alias x='cd /parent/child';alias y='cd /a/b/c';alias z='tail -0f some.log'

मेरे द्वारा आजमाए गए उपनामों में से कोई भी वैश्विक उर्फ ​​में पहले से मौजूद नहीं था। (मैंने स्क्रीन पर उर्फ ​​टाइप किया और आउटपुट देखा)।


आप अपने सभी उपनामों को .bashrcफ़ाइल में रख सकते हैं ।
cuonglm

@Web नैश: लेकिन अगर आप अलग-अलग आदेशों के लिए अलग-अलग तर्क पारित करना चाहते हैं तो यह काम नहीं करेगा
१४:५४

जवाबों:


12

उदाहरण के लिए, किसी फ़ाइल में आप सभी सत्र उर्फ ​​उत्पन्न करते हैं

alias x='cd /parent/child'
alias y='cd /a/b/c'
alias z='tail -0f some.log'

तो उपयोग करें

 . ./alias.txt

आपने इस एकल सत्र के लिए उपनाम सूची में आप सभी को उतारा है।

संपादित करें:

उपयोग अवश्य करें

. ./alias.txt

नहीं

./alias.txt

पूर्व के मामले में, सामग्री को 'जैसे कि यदि टाइप किया गया है' पढ़ा जाता है, जबकि बाद वाला मामला उपनाम को एक शेल में परिभाषित करेगा जो बाहर निकल जाएगा।


मैंने इस प्रश्न को पोस्ट करने से पहले शुरू में एक समान काम किया था। एक पाठ फ़ाइल के बजाय मैंने बिना किसी एक्सटेंशन के इन पंक्तियों को एक फ़ाइल में डाला और यह काम नहीं किया। लेकिन जब मैंने इसे एक .txt एक्सटेंशन के साथ आजमाया तो यह काम नहीं किया
वेब नैश

यह बिल्कुल सही काम किया। बहुत बहुत धन्यवाद। मुझे इन तीन रूपों 1) का उपयोग करने के बीच अंतर समझ में नहीं आया) 2) ./alias.txt 3)। ./alias.txt
वेब नैश

फार्म 1) और 2) समतुल्य हैं। आपके $ पेट में है। thay baiscally एक नए शेल को कॉल करेगा, कमांड को रन करेगा। ज्यादातर मामलों में यह ठीक है, हालांकि यदि आप उर्फ ​​या फ़ंक्शन चाहते हैं, तो शेल से बाहर निकलने पर परिभाषा गायब हो जाएगी।
आर्चेमर
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.