फोटो साभार:pchow98
जबकि हम में से अधिकांश लोग उपनाम में जेनिफर गार्नर की तरह किसी को लात नहीं मार सकते हैं, हम कम से कम लिनक्स उपनाम कमांड का प्रभावी ढंग से उपयोग करने का प्रयास कर सकते हैं।
एक उपनाम आदेश एक पाठ का दूसरे के लिए सरल स्ट्रिंग प्रतिस्थापन है, जब इसे एक साधारण कमांड के पहले शब्द के रूप में प्रयोग किया जाता है।
इस लेख में आइए हम समीक्षा करें कि बैश उपनामों को स्थायी और अस्थायी रूप से कैसे सेट / अनसेट किया जाए। आइए हम कुछ उपयोगी बैश उपनाम उदाहरणों की भी समीक्षा करें जिनका उपयोग आप अपनी बैश स्टार्टअप फ़ाइलों में कर सकते हैं।
यह लेख चल रहे बैश ट्यूटोरियल श्रृंखला का हिस्सा है। बैश इंट्रोडक्शन और बैश एग्जिट स्टेटस के बारे में हमारे पहले के ट्यूटोरियल को देखें।
उपनाम कैसे सेट करें
उपनामों को कमांड लाइन पर, .bash_profile में, या .bashrc में, निम्न सिंटैक्स का उपयोग करके परिभाषित किया जा सकता है:
$ alias name='unix command with options'
- उपनाम - एक शेल बिल्ट-इन है
- नाम - उपनाम के लिए कोई भी उपयोगकर्ता द्वारा परिभाषित सरल नाम।
- कमांड - कोई भी यूनिक्स कमांड, जो विकल्पों के साथ हो सकता है।
इसका मतलब है कि नाम कमांड के लिए एक उपनाम है। जब भी नाम को कमांड के रूप में टाइप किया जाता है, बैश संबंधित कमांड को उसके स्थान पर विकल्पों के साथ बदल देगा।
नोट: समान चिह्न के दोनों ओर कोई स्थान नहीं है। यदि अलियास की जा रही स्ट्रिंग में एक से अधिक शब्द हों, तो कमांड के इर्द-गिर्द उद्धरण आवश्यक हैं।
<केंद्र> केंद्र>इस कमांड को कमांड लाइन में निष्पादित करने से यह अस्थायी रूप से उपनाम बन जाता है। अर्थात्, यह उपनाम तब तक उपलब्ध है जब तक आप शेल से बाहर नहीं निकल जाते। उपनाम को बैश स्टार्टअप फ़ाइलों में संग्रहीत करना इसे स्थायी उपनाम के रूप में बनाता है।
निम्नलिखित उपनाम उपयोगी हो सकते हैं। आप इन उपनामों को ~/.bashrc फ़ाइल में सेट कर सकते हैं।
सबसे आम उपनाम उदाहरण
निम्नलिखित उपनाम आपके लिए सीधे उपयोग करने के लिए तैयार हैं। आपका पसंदीदा उपनाम क्या है?
अंतिम संशोधित फ़ाइल को vim में खोलें
alias Vim="vim `ls -t | head -1`"
शीर्ष 5 बड़ी फ़ाइलें ढूंढें
alias findbig="find . -type f -exec ls -s {} \; | sort -n -r | head -5"
बैश प्रक्रिया के लिए ग्रेप
alias psg="ps -aux ¦ grep bash"
सूचक और रंग के साथ छिपी हुई फाइलों सहित सूची
alias ls='ls -aF --color=always'
लंबे प्रारूप में सूची बनाएं
alias ll='ls -l'
सभी इतिहास और स्क्रीन को साफ़ करने के लिए
alias hcl='history -c; clear'
बुनियादी कमांड को इंटरैक्टिव और वर्बोज़ बनाएं
alias cp="cp -iv" # interactive, verbose alias rm="rm -i" # interactive alias mv="mv -iv" # interactive, verbose alias grep="grep -i" # ignore case
अक्सर उपयोग किए जाने वाले आदेशों के लिए उपयोग में आसान उपनाम
alias x="exit"
स्क्रीन और सूची फ़ाइल साफ़ करें
alias cls='clear;ls'
फाइलसिस्टम डिस्कस्पेस उपयोग
alias dus='df -h'
विभिन्न निर्देशिकाओं में नेविगेट करने के लिए
alias ..='cd ..' alias ...='cd ../..'
अधिक सीडी कमांड उपनामों के लिए इस लेख को देखें।
उपनाम उदाहरण जिन्हें आपके परिवेश के लिए संशोधित किया जाना चाहिए
इस खंड में दिए गए उपनाम उदाहरणों को उपयोग करने से पहले आपके परिवेश के अनुसार संशोधित किया जाना चाहिए।
फ़ायरफ़ॉक्स लॉक हटाएं
alias rm_fire_lock='/bin/rm .mozilla/firefox/NAME.default/.parentlock' # edit NAME
लॉगिननाम के साथ ssh के माध्यम से रिमोट मशीन में लॉग इन करने के लिए
alias server_name='ssh 192.168.1.1 -l tom' # change the ip & user name alias ser2='ssh www.dbserver.com -l kgf' # create as many alias as required.
दूरस्थ cvs सर्वर में लॉगिन करने के लिए
export CVS_RSH=/usr/local/bin/ssh alias cvl='cvs -d :ext:[email protected]:/usr/local/cvsroot' # change required.
cdrom को अनमाउंट करना
alias umnt='umount /mnt/cdrom' # cdrom / thumb drive.
सभी उपनाम कैसे देखें
शेल में सेट किए गए उपनामों की सूची देखने के लिए तर्क के बिना उपनाम निष्पादित करें।
$ alias alias ..='cd ..' alias ...='cd ../..' alias mnt='mount /mnt/cdrom' alias umnt='umount /mnt/cdrom' alias dus='df -h'
किसी विशेष उपनाम को देखने के लिए, नीचे दिखाए गए अनुसार "उपनाम उपनाम" प्रारूप दर्ज करें।
$ alias dus alias dus='df -h'
उपनामों का उपयोग अस्थायी रूप से कैसे रोकें
जब आप उपनाम के बजाय कमांड को कॉल करना चाहते हैं, तो आपको इससे बचकर कॉल करना होगा।
$ \aliasname
उदाहरण के लिए, उपनाम cp="cp -iv", आपसे पुष्टि के लिए पूछेगा कि क्या आप किसी फ़ाइल को अधिलेखित करने वाले हैं। यह कष्टप्रद हो सकता है जब आप बहुत सी फाइलों की प्रतिलिपि बना रहे हैं जिन्हें आप पहले से जानते हैं कि आप ओवरराइट करने जा रहे हैं। शायद आप अस्थायी रूप से cp-alias के बजाय नियमित cp कमांड का उपयोग करना चाहें।
इसलिए, यदि कोई उपनाम cp मौजूद है, लेकिन आप इसके बजाय cp-command का उपयोग करना चाहते हैं, तो नीचे दिखाए गए अनुसार अस्थायी रूप से उपनाम से बचें:
\cp * /backup/files/
उपनाम कैसे निकालें
unalias एक उपनाम को हटाने के लिए अंतर्निहित शेल है। किसी विशेष उपनाम को हटाने के लिए:
$ unalias hcl where unalias is a shell built-in. mnt is an alias name. $ hcl -bash: hcl: command not found
सभी उपनाम कैसे निकालें
-a विकल्प के साथ unalias, सभी उपनाम हटा देता है।
$ unalias -a $ alias
नोट :शेल फंक्शन तेज होते हैं। कार्यों के बाद उपनाम देखे जाते हैं और इस प्रकार हल करना धीमा होता है। जबकि उपनामों को समझना आसान है, लगभग हर उद्देश्य के लिए उपनामों पर शेल कार्यों को प्राथमिकता दी जाती है। आपको मानक कमांड को उपनाम या फ़ंक्शन से बदलने में बहुत सावधानी बरतनी चाहिए।
इस आलेख में दिखाए गए उपनाम इस नमूना बैश उपनाम फ़ाइलों में उपलब्ध हैं, जिन्हें आप कॉपी/पेस्ट कर सकते हैं और इसे अपनी बैश स्टार्टअप फ़ाइल पर उपयोग कर सकते हैं।
उपनाम बहुत उपयोगी चीजें हैं, लेकिन मुझे आशा है कि आपको बैश फ़ंक्शन कम से कम दिलचस्प और इससे भी अधिक उपयोगी लगेंगे, जिसकी चर्चा हम अपने अगले बैश लेख में करेंगे।