लिनक्स एलियास आपको लंबी, त्रुटि-प्रवण कमांड को छोटे, सार्थक शब्दों से बदलने देते हैं जो आपके काम करने के तरीके से मेल खाते हैं। कमांड को दोबारा टाइप करने या सिंटैक्स का अनुमान लगाने के बजाय, आप एक ही कीवर्ड से वही ट्रिगर करते हैं जो आप चाहते हैं। यह गलतियों को कम करता है, नियमित कार्यों को गति देता है, और आपको कमांड लाइन के बजाय काम पर केंद्रित रहने में मदद करता है। इस गाइड में, मैं आपको Bash में एलियास को प्रभावी ढंग से उपयोग करने के व्यावहारिक उदाहरण दिखाऊंगा।
लिनक्स में एलियास कैसे काम करते हैं
लिनक्स में कई उन्नत कार्यों के लिए लंबी और जटिल कमांड टाइप करने की आवश्यकता होती है। alias कमांड आपको लंबी कमांड के लिए छोटे, कस्टम नाम बनाने की अनुमति देकर इस प्रक्रिया को सरल बनाता है। एक एलियास शॉर्टकट की तरह काम करता है: जब आप एलियास टाइप करते हैं, तो शेल उसी विकल्प और आर्ग्यूमेंट के साथ मूल कमांड चलाता है। आप ये शॉर्टकट स्वयं बना सकते हैं, और कुछ सिस्टम या कुछ एप्लिकेशन में डिफ़ॉल्ट रूप से पहले से मौजूद हो सकते हैं।
एलियास बनाने का बुनियादी सिंटैक्स है:
alias short_name='command'
यहां, short_name उस लंबी कमांड को दर्शाता है जिसे आप बदलना चाहते हैं। उदाहरण के लिए, आप सामान्य रूप से छिपी हुई फाइलों और मानव-पठनीय आकारों सहित फाइलों की विस्तृत सूची प्रदर्शित करने के लिए ls -lah टाइप करेंगे। इसे हर बार टाइप करने से बचने के लिए, आप इस तरह एक एलियास बना सकते हैं:
alias ll='ls -lah'
इसके बाद, आपको केवल ll टाइप करना होगा, और शेल इसे निष्पादित करने से पहले स्वचालित रूप से ls -lah से बदल देगा।
अपना Bash एलियास वातावरण सेट करना
अधिकांश लिनक्स सिस्टम डिफ़ॉल्ट शेल के रूप में GNU Bash का उपयोग करते हैं। Bash में, आप इस आधार पर अलग-अलग स्थानों में एलियास परिभाषित कर सकते हैं कि आप उन्हें अस्थायी रूप से या स्थायी रूप से काम करना चाहते हैं।
एक अस्थायी एलियास केवल वर्तमान सत्र में काम करता है और टर्मिनल बंद होने पर गायब हो जाता है। यदि आप चाहते हैं कि आपके एलियास हर बार नया टर्मिनल खोलने पर उपलब्ध रहें, तो आपको उन्हें एक कॉन्फिगरेशन फ़ाइल में परिभाषित करना चाहिए। स्थायी एलियास आमतौर पर आपकी होम डायरेक्टरी में निम्नलिखित फ़ाइलों में से एक में जोड़े जाते हैं:
- “.bashrc” (सबसे अधिक उपयोग की जाने वाली फ़ाइल)
- “.bash_aliases” (एलियास को अलग से व्यवस्थित रखने के लिए उपयोगी)
- “.bash_profile” (लॉगिन शेल के लिए उपयोग किया जाता है)
एक क्लीनर दृष्टिकोण है अपने एलियास को “.bash_aliases” फ़ाइल के अंदर स्टोर करना और सुनिश्चित करना कि यह आपकी “.bashrc” फ़ाइल से लोड हो। ऐसा करने के लिए, अपनी “.bashrc” फ़ाइल (होम फ़ोल्डर में छिपी हुई) के अंदर निम्नलिखित लाइनें जोड़ें:
if [ -f ~/.bash_aliases ]; then . ~/.bash_aliases fi
यह कोड जांचता है कि “.bash_aliases” फ़ाइल मौजूद है या नहीं और इसे स्वचालित रूप से लोड करता है।
अपने एलियास जोड़ने या संपादित करने के बाद, निम्न कमांड चलाकर कॉन्फिगरेशन को रीलोड करें:
source ~/.bashrc
एक बार जब आप ऐसा करते हैं, तो आपके एलियास स्थायी हो जाते हैं और हर नए टर्मिनल सत्र में उपलब्ध होंगे।
एलियास के साथ पठनीयता और फाइल लिस्टिंग में सुधार
डिफ़ॉल्ट रूप से, ls कमांड सादा और स्कैन करने में कठिन महसूस हो सकती है, खासकर जब बड़ी संख्या में फाइलों से निपटना हो। पठनीयता में सुधार और दैनिक उपयोग को तेज करने के लिए, आप इसे एलियास का उपयोग करके पुनर्परिभाषित या विस्तारित कर सकते हैं।
उदाहरण के लिए, मैं एक एलियास बनाता हूं जो स्वचालित कलर आउटपुट को सक्षम करता है। यह निर्देशिकाओं, निष्पादन योग्य फाइलों और अन्य फाइल प्रकारों को अलग करना बहुत आसान बनाता है:
alias ls='ls --color=auto'
फिर मैं कुछ और शॉर्टकट जोड़ता हूं जिनका मैं नियमित रूप से उपयोग करता हूं:
alias la='ls -A' alias lt='ls -lhtr'
अब, la चलाने से . और .. एंट्री के बिना फाइलों की पूरी सूची दिखाई देती है। lt के साथ, फाइलों को विस्तृत जानकारी के साथ सूचीबद्ध किया जाता है और संशोधन समय के रिवर्स ऑर्डर में सॉर्ट किया जाता है, जिससे नवीनतम फाइलें नीचे आ जाती हैं।
फाइल नेविगेशन शॉर्टकट
जब मैं लगातार निर्देशिकाओं के बीच नेविगेट कर रहा होता हूं, तो लंबे सापेक्ष पथ टाइप करना निराशाजनक होता है। cd ../../.. जैसे पूरे कमांड को बार-बार दर्ज करने के बजाय, मैं सरल नेविगेशन शॉर्टकट परिभाषित करता हूं:
alias ..='cd ..' alias ...='cd ../..' alias ....='cd ../../..'
अब मैं केवल दो या तीन डॉट्स का उपयोग करके कई निर्देशिका स्तरों पर जा सकता हूं, जो बहुत तेज और आसान है।
इसी तरह, मैं उन फ़ोल्डर्स के लिए डायरेक्ट शॉर्टकट बनाता हूं जिन्हें मैं दैनिक रूप से एक्सेस करता हूं:
alias docs='cd ~/Documents'
रोजमर्रा के Git वर्कफ़्लो के लिए शॉर्टकट
git log --oneline --graph --decorate जैसे कुछ Git कमांड को बार-बार टाइप करना लंबा होता है, इसलिए मैं उन्हें शॉर्टकट के साथ सरल बनाता हूं:
alias gl='git log --oneline --graph --decorate' alias gs='git status' alias ga='git add .' alias gc='git commit -m' alias gp='git push'
एक बार ये एलियास लागू हो जाने पर, मैं अपने कमिट के स्पष्ट, संक्षिप्त और नेत्रहीन संरचित इतिहास को तुरंत देखने के लिए git log --oneline --graph --decorate के बजाय केवल gl टाइप करता हूं। अधिक उन्नत Git-विशिष्ट शॉर्टकट के लिए, आप अपने “.gitconfig” फ़ाइल के अंदर नेटिव Git एलियास परिभाषित कर सकते हैं बजाय Bash के।
जोखिम भरी कमांड में सुरक्षा परत जोड़ना
rm -rf जैसी कुछ कमांड, यदि गलत तरीके से उपयोग की जाती हैं, तो स्थायी रूप से फाइलों को हटा सकती हैं। इसलिए, मैं इन कमांड को एलियास के साथ पुनर्परिभाषित करके आकस्मिक दुर्घटनाओं को रोकता हूं:
alias rm='rm -i' alias cp='cp -i' alias mv='mv -i'
-i फ्लैग कोई भी कार्रवाई करने से पहले पुष्टि के लिए संकेत देता है।
मल्टी-कमांड एलियास
एलियास क्रम में कई कमांड भी चला सकते हैं। उदाहरण के लिए, मैंने एक शॉर्टकट बनाया जो मेरे सिस्टम को अपडेट करता है और सभी पैकेजों को अपग्रेड करता है, लेकिन केवल तभी अपग्रेड चलाता है जब अपडेट सफल होता है:
alias update='sudo apt update && sudo apt upgrade -y'
आप अगली कमांड को तभी चलाने के लिए && का उपयोग कर सकते हैं जब पिछली कमांड सफल हो, और कमांड को सफलता की परवाह किए बिना चलाने के लिए ; का उपयोग कर सकते हैं।
एलियास को व्यवस्थित और बनाए रखना
जैसे-जैसे आपके एलियास की सूची बढ़ती है, उन्हें व्यवस्थित रखना उन्हें प्रबंधित और अपडेट करना आसान बनाता है। उदाहरण के लिए, जब भी मैं अपने सभी एलियास देखना चाहता हूं, मैं बिना किसी आर्ग्यूमेंट के alias कमांड चलाता हूं:
alias
और यदि मुझे किसी विशिष्ट को जांचने की आवश्यकता है, तो मैं alias कमांड के साथ शॉर्टकट नाम निर्दिष्ट करता हूं:
alias update
इसी तरह, जब भी मैं केवल वर्तमान सत्र के लिए एक एलियास को हटाना चाहता हूं, मैं unalias कमांड का उपयोग करता हूं:
unalias ll
किसी एलियास को स्थायी रूप से हटाने के लिए, इसे मेरी “.bashrc” या “.bash_aliases” फ़ाइल से हटाएं और फिर source ~/.bashrc कमांड के साथ शेल को रीलोड करें।
एलियास का उपयोग कब न करें
हालांकि एलियास उपयोगी हैं, वे हमेशा सही समाधान नहीं होते हैं।
- एलियास केवल इंटरैक्टिव शेल सत्रों में विस्तारित होते हैं। यदि आप अपने टर्मिनल में एक एलियास परिभाषित करते हैं और फिर शेल स्क्रिप्ट के अंदर इसका उपयोग करने का प्रयास करते हैं, तो यह आमतौर पर काम नहीं करेगा।
- एलियास निष्पादन से पहले केवल टेक्स्ट को प्रतिस्थापित करते हैं। वे
$1,$2, आदि जैसे स्थितिगत पैरामीटर्स को प्रोसेस नहीं करते हैं। - एलियास सरल कमांड प्रतिस्थापन के लिए डिज़ाइन किए गए हैं। एक बार जब आपको शर्त जांच, लूप, कई पैरामीटर, या उन्नत तर्क की आवश्यकता होती है, तो एलियास प्रबंधन करना मुश्किल हो जाता है।
सरल शब्दों में, एलियास सरल, दोहराव वाली कमांड के लिए सर्वोत्तम हैं। तर्क या पैरामीटर की आवश्यकता वाली किसी भी चीज़ के लिए, इसके बजाय एक फ़ंक्शन या स्क्रिप्ट का उपयोग करें।