यदि आप GNU/Linux सिस्टम का अधिकतम लाभ उठाना चाहते हैं तो कमांड प्रॉम्प्ट्स और शेल स्क्रिप्ट्स जानना अभी भी आवश्यक है और जितना अधिक कोई कमांड लाइन पर काम करता है, उतना ही अधिक वह पाएगा कि उपयोग की जा रही अधिकांश कमांड्स उपलब्ध कमांड्स का एक बहुत छोटा सबसेट हैं। अधिकांश कार्य आदतन होते हैं और उपयोगकर्ता उन्हें हर दिन उसी तरह चला सकता है।
जबकि कई सबसे आम कमांड यूटिलिटीज के निर्माताओं ने छोटे नामों का उपयोग करके अनावश्यक टाइपिंग को खत्म करने का प्रयास किया है, उदाहरण के लिए list के बजाय हम "ls" टाइप करते हैं और change-directory के बजाय हम "cd" टाइप करते हैं। इसके अतिरिक्त, कई लिनक्स उपयोगकर्ताओं को अक्सर एक ही कमांड को बार-बार उपयोग करने की आवश्यकता होती है। बार-बार उसी कमांड को टाइप/कॉपी करना उत्पादकता को कम करेगा और उपयोगकर्ता को वास्तविक काम से विचलित करेगा।
यदि हम उन लंबी कमांड्स को टाइप करने में कम समय व्यतीत करें तो बहुत अच्छा होगा। कमांड लाइन पर आपके समय को कम करने के दो शक्तिशाली तरीके हैं शेल aliases और functions, इन दोनों के उपयोग से उपयोगकर्ता दोहराए जाने वाले कार्यों को वश में कर सकता है, लंबी प्रक्रियाओं को छोटा कर सकता है, और उन विकल्पों के साथ कस्टमाइज्ड कमांड्स कॉन्फिगर कर सकता है जिनका उपयोग वह हमेशा करता है और जिन्हें याद रखने में संघर्ष करता है।
आप अपनी विशिष्ट आवश्यकताओं के अनुकूल अपनी कमांड्स को परिभाषित कर सकते हैं, और दोहराए जाने वाले कार्यों के बोझ को कम कर सकते हैं।
Aliases और शेल स्क्रिप्ट्स यानी functions लगभग एक ही तरह का काम करते हैं। वे आपको Bash शेल कार्यक्षमता के एक सेट को परिभाषित करने और नाम देने की अनुमति देते हैं जिसे आपके द्वारा दिए गए नाम से बुलाया जा सकता है। हर बार जब आप उनका उपयोग करना चाहते हैं तो सभी चरणों या कमांड्स को टाइप करने के बजाय नाम टाइप करना आसान और अधिक सुविधाजनक होता है।
एक alias और एक function के बीच का अंतर जटिलता और पैमाने का है। Scripts लंबे और अधिक विस्तृत कोड के टुकड़ों को रखने के लिए बेहतर हैं। Aliases छोटे, अधिक संक्षिप्त, कमांड सेट को रखने के लिए एकदम सही हैं।
शेल Aliases
एक शेल alias एक कस्टम शॉर्टकट है जो किसी कमांड या कमांड्स के सेट को कस्टम विकल्पों के साथ या बिना संदर्भित करता है। ये aliases उन लंबी कमांड्स के लिए वैकल्पिक, याद रखने में आसान नाम हैं जिन्हें आपको बार-बार 실행 करने की आवश्यकता होती है। जब आप कमांड लाइन पर टाइप करते हैं, तो शेल पहले अपने aliases की सूची में आपके द्वारा लिखे गए को ढूंढता है। यदि कोई मिलान मिलता है, तो उसे alias द्वारा उसके संबंधित टेक्स्ट से बदल दिया जाएगा; ऐसा करने के बाद, यह फिर से पूरी परिणामी कमांड लाइन को देखेगा और इसे 실행 करेगा।
संभावना है कि आपने लिनक्स सिस्टम पर पहले से ही aliases का उपयोग किया होगा क्योंकि अधिकांश लिनक्स डिस्ट्रीब्यूशन यूजर अकाउंट की ".bashrc" फाइल में डिफ़ॉल्ट रूप से कम से कम कुछ लोकप्रिय aliases जोड़ते हैं।
Aliases से आगे: Shell functions
समान लेकिन समान नहीं कोड के ब्लॉक्स को Aliases द्वारा प्रतिस्थापित नहीं किया जा सकता। वे त्रुटियों को संभाल नहीं सकते न ही कस्टम एग्जिट कोड वापस कर सकते हैं, फ्लो कंट्रोल कर सकते हैं, या वेरिएबल्स का उपयोग कर सकते हैं। यदि आपको इनमें से किसी की आवश्यकता है, तो शेल फंक्शन्स का उपयोग करने का समय आ गया है।
शेल फंक्शन्स कोड के ब्लॉक्स हैं जो पूर्ण सब-स्क्रिप्ट्स के रूप में संरचित हैं, एक बार लिखे गए और किसी भी स्क्रिप्ट से बुलाए गए जिन्हें उनकी आवश्यकता है।
Aliases का सिंटैक्स:
Bash में aliases बनाना बहुत सीधा है। सिंटैक्स इस प्रकार है:
alias alias_name="command_to_run"
वर्तमान सत्र में एक नया bash alias बनाने के लिए:
- "alias" टाइप करें
- फिर alias नाम घोषित करें
- इक्वल साइन के बाद
- और वह कमांड जो alias कहलाने पर चलेगी।
कमांड को कोट्स में संलग्न किया जाना चाहिए और इक्वल साइन के आसपास कोई स्पेसिंग नहीं होनी चाहिए। यहां स्पेस कमांड को तोड़ देंगे। प्रत्येक alias को एक नई लाइन पर घोषित किया जाना चाहिए।
आइए इसे उदाहरण से स्पष्ट करें। लिनक्स कमांड लाइन पर, सबसे अधिक उपयोग की जाने वाली कमांड में से एक है "ls"। ज्यादातर "ls" कमांड का उपयोग "la" स्विच के साथ किया जाता है जो सभी फाइलों और डायरेक्टरीज को हिडन फाइलों के साथ लॉन्ग लिस्ट के फॉर्मेट में सूचीबद्ध करेगा। अब हम एक साधारण bash alias "ll" बनाएंगे जो ls -la कमांड का शॉर्टकट होगा।
- एक टर्मिनल विंडो खोलें
- टाइप करें:
alias ll="ls -la"
और एंटर दबाएं - अब कंसोल में "ll" टाइप करें और एंटर दबाएं
- आउटपुट ls -la टाइप करने जैसा ही होगा।
उपरोक्त परिभाषित alias "ll" केवल वर्तमान शेल सत्र में उपलब्ध होगा। यदि आप सत्र बंद करते हैं या किसी अन्य टर्मिनल से एक नया सत्र विंडो शुरू करते हैं तो उपरोक्त परिभाषित alias "ll" उपलब्ध नहीं होगा।
हम बाद में चर्चा करेंगे कि alias को स्थायी कैसे बनाया जाए। यहां दिए गए उदाहरण bash शेल के लिए हैं, लेकिन सभी अवधारणाएं और अधिकांश कोड अन्य शेल्स के लिए भी मान्य हैं।
प्रीडिफाइन्ड Aliases
कुछ aliases आपके लिए पूर्वनिर्धारित हैं। सिस्टम में परिभाषित सभी aliases की सूची जानने के लिए, हम बिना किसी पैरामीटर के "alias" कमांड का उपयोग करेंगे:
alias
ये उबंटू टेस्ट मशीन पर aliases हैं जिस पर इस लेख पर शोध किया गया था। साथ ही, कोई भी कस्टम-परिभाषित aliases भी इस सूची में दिखाई देंगे।
ls कमांड के लिए कई अलग-अलग aliases हैं, और aliases का एक समूह है जो grep परिवार की कमांड्स को कलर आउटपुट प्रदान करता है, उदाहरण के लिए ऊपर परिभाषित aliases के साथ, जब भी आप टाइप करते हैं:
grep
इसे इस रूप में व्याख्या किया जाएगा:
grep --color=auto
यह aliases के साथ एक महत्वपूर्ण बिंदु दिखाता है। उनका नाम मौजूदा कमांड्स के समान हो सकता है। वे यहां तक कि खुद के भीतर मूल कमांड को समाहित कर सकते हैं।
यहां grep alias की परिभाषा है।
alias grep='grep --color=auto'
- alias कमांड का उपयोग alias को परिभाषित करने के लिए किया जाता है।
- alias का नाम आगे दिया जाता है। इस उदाहरण में, यह "grep" है।
- इक्वल साइन alias के नाम को alias के बॉडी से जोड़ता है। बहुत सरल aliases को छोड़कर सभी के लिए, alias का बॉडी सिंगल कोट मार्क्स ‘ के भीतर संलग्न होता है।
- alias का बॉडी वह सेक्शन है जो कमांड लाइन पर alias उपयोग किए जाने पर 실행 होता है।
- इस alias का बॉडी केवल --color=auto विकल्प के साथ grep कमांड को कॉल करता है।
Alert Alias
सूची के शीर्ष पर, alert नामक एक जटिल दिखने वाला alias है। एक त्वरित नोट के रूप में, और ताकि आप जान सकें कि यह क्या करता है, alert alias का उपयोग आपको यह बताने के लिए किया जाता है कि कमांड कब समाप्त हुई है। यह यह भी इंगित करता है कि कमांड सफलतापूर्वक पूरी हुई या नहीं। यह स्क्रीन के शीर्ष पर एक ग्राफिकल सिस्टम अलर्ट प्रदान करता है।
यहां एक सरल उदाहरण है। sleep कमांड पांच सेकंड के लिए स्लीप करेगा। फिर alert alias को कॉल किया जाएगा। alias पिछली कमांड से प्रतिक्रिया की जांच करता है। यह हिस्ट्री फाइल से अंतिम कमांड निकालता है। यह निर्धारित करता है कि कमांड सफलतापूर्वक पूरी हुई या नहीं। फिर यह परिणामों को सिस्टम अलर्ट में प्रस्तुत करता है।
यदि कमांड अपेक्षा के अनुरूप पूरी हुई, तो सिस्टम अलर्ट में आइकन एक छोटी टर्मिनल विंडो है। यदि कमांड ने एरर कोड वापस किया, तो सिस्टम अलर्ट में आइकन एक लाल एरर आइकन है।
sleep 5; alert
पांच सेकंड के बाद, हम यह सिस्टम अलर्ट देखते हैं:
आइकन एक छोटी टर्मिनल विंडो है, मतलब सब ठीक रहा। आइए एक ऐसी कमांड के साथ फिर से कोशिश करते हैं जिसे हम जानते हैं कि विफल होगी:
DoomedToFail; alert
हमारा सिस्टम अलर्ट अब एक एरर आइकन दिखाता है।
एक साधारण Alias परिभाषित करना
जैसा कि हमने देखा, एक alias को परिभाषित करने के लिए, हम alias कमांड का उपयोग करते हैं।
हम clear कमांड के लिए एक उपनाम बनाने जा रहे हैं। हमारा alias cls कहलाएगा और यह clear कमांड को कॉल करेगा।
हमारी alias परिभाषा इतनी तुच्छ है कि इसे सिंगल कोट मार्क्स में लपेटने की आवश्यकता नहीं है। यदि alias का बॉडी इससे अधिक जटिल है, या यदि इसमें स्पेस हैं, तो इसे सिंगल कोट्स में लपेटें। हम alias को परिभाषित करेंगे, आउटपुट डालने के लिए ls का उपयोग करेंगे और फिर स्क्रीन को साफ़ करने के लिए अपने नए alias cls का उपयोग करेंगे।
alias cls=clear ls -l cls
स्क्रीन साफ़ हो गई। सफलता, यद्यपि अल्पकालिक। alias केवल तब तक जीवित रहेगा जब तक यह टर्मिनल विंडो खुली रहती है। एक बार विंडो बंद हो जाने पर, alias गायब हो जाएगा।
".bashrc" फाइल के उपयोग से Aliases को स्थायी बनाना
आप सोच रहे होंगे कि प्री-पैकेज्ड aliases कहां परिभाषित हैं। यह आपके होम फोल्डर में ".bashrc" फाइल में है। जब भी आप एक इंटरैक्टिव शेल शुरू करते हैं तो यह फाइल पढ़ी जाती है और इसके अंदर के कमांड 실행 किए जाते हैं। यानी जब आप एक टर्मिनल विंडो खोलते हैं।
अपने होम फोल्डर में निम्न कमांड टाइप करें ताकि सिंटैक्स हाइलाइटिंग के साथ ".bashrc" फाइल की सामग्री देख सकें।
gedit .bashrc
यह gedit एडिटर को ".bashrc" फाइल के साथ लॉन्च करेगा।
हाइलाइट किए गए क्षेत्र दो क्षेत्र दिखाते हैं जहां aliases परिभाषित हैं।
दस्तावेज़ के माध्यम से स्क्रॉल करने पर aliases से संबंधित दो अन्य सेक्शन प्रकट होंगे:
इनमें से पहला alert alias की परिभाषा है। दूसरा एक if स्टेटमेंट है। इसका अनुवाद है, "यदि फाइल ".bash_aliases" मौजूद है, तो इसे पढ़ें।"
यदि आपके पास केवल कुछ aliases हैं जिन्हें आप परिभाषित करना चाहते हैं, तो आप उन्हें अपनी ".bashrc" फाइल में रख सकते हैं। उन्हें ls aliases वाले सेक्शन के नीचे रखें।
यदि आप बहुत सारे aliases बनाने जा रहे हैं, या आप केवल अपने aliases को अपनी फाइल के भीतर संकुलित रखने का विचार पसंद करते हैं, तो आप उन्हें अपनी ".bash_aliases" फाइल में परिभाषित कर सकते हैं। उन्हें ".bash_aliases" फाइल में बनाने का एक फायदा यह है कि आप गलती से ".bashrc" फाइल में किसी भी सेटिंग को नहीं बदल सकते। एक और फायदा यह है कि आपके aliases नए सिस्टम्स पर आसानी से कॉपी किए जा सकते हैं क्योंकि वे ".bashrc" फाइल से अलग हैं।
Alias का नाम इस तरह रखा जाना चाहिए कि वह याद रखने में आसान हो। भविष्य के संदर्भ के लिए एक टिप्पणी जोड़ने की भी सिफारिश की जाती है।
.bash_aliases फाइल में Aliases स्टोर करना
".bash_aliases" फाइल डिफ़ॉल्ट रूप से मौजूद नहीं है, आपको इसे बनाना होगा। आप इस कमांड से फाइल बना सकते हैं:
touch .bash_aliases
आइए फाइल को संपादित करें और इसमें कुछ aliases जोड़ें। यह कमांड ".bash_aliases" फाइल को gedit एडिटर में खोलेगा।
gedit .bash_aliases
हमने तीन aliases जोड़े हैं। पहला हमारा cls alias है जिसका हमने पहले उपयोग किया था। अगला h कहलाता है। और history कमांड को कॉल करने का एक संक्षिप्त तरीका है।
तीसरा alias ftc कहलाता है। यह "file type count" के लिए खड़ा है।
यह alias अधिक शामिल है, इसलिए इसे सिंगल कोट मार्क्स में लपेटा गया है। यह पाइप्स द्वारा जुड़ी कमांड्स की एक श्रृंखला का उपयोग करता है। यह विभिन्न फाइल एक्सटेंशन और डायरेक्टरी नामों की एक सॉर्टेड सूची तैयार करता है, प्रत्येक सूची प्रविष्टि के लिए एक काउंट के साथ।
जब हमने ".bash_aliases" फाइल सेव कर ली, तो हम उम्मीद कर सकते हैं कि हमारे aliases लाइव और एक्सेसिबल होंगे। ऐसा नहीं है। Bash शेल द्वारा फाइल को पढ़े जाने से पहले alias परिभाषाएं लाइव नहीं होतीं। यह जब भी एक इंटरैक्टिव शेल खोला जाता है तब किया जाता है।
हम Bash शेल बिल्ट-इन . का उपयोग करके किसी फाइल में कमांड्स को पढ़ और 실행 भी कर सकते हैं। क्योंकि हमारी ".bash_alias" फाइल ".bashrc" प्रोसेस होने पर पढ़ी जाती है, हमें ".bashrc" को कॉल करके अपना टेस्ट करना चाहिए। इस तरह हम जांच सकते हैं कि ".bash_alias" फाइल ".bashrc" से कॉल की जाती है और हमारे aliases जीवित और स्वस्थ हैं।
हमने जिन कमांड्स का उपयोग किया है वे हैं:
gedit .bash_aliases
".bash_aliases" फाइल को संपादित करने के लिए।
. .bashrc
यह ".bashrc" के भीतर कमांड्स को पढ़ेगा और 실행 करेगा, जो ".bash_aliases" को कॉल करेगा।
ftc
यह ftc alias को कॉल करेगा।
हमारा alias प्रतिक्रिया देता है जिसका अर्थ है कि Bash ने ".bashrc" और ".bash_aliases" दोनों को पढ़ा है, और हमारे नए aliases अब लाइव हैं।
आप अब आगे जा सकते हैं और नए aliases को ".bash_aliases" फाइल में जोड़ सकते हैं जैसे वे आपके सामने आते हैं। यदि आप खुद को एक या दो बार से अधिक चीजें करते हुए पाते हैं, तो उसके लिए एक alias बनाने पर विचार करें।
Aliases हटाना
एक कमांड है aliases को हटाने के लिए ताकि Bash उन्हें न पहचाने न उन पर प्रतिक्रिया दे। ताज़गी से स्पष्ट, कमांड को unalias कहा जाता है।
इसका उपयोग करने के लिए, उस alias का नाम दें जिसे आप Bash से भूलवाना चाहते हैं। हमारे ftc alias को भूलने के लिए Bash को बनाने के लिए, unalias का उपयोग करें, जैसे पहले इस्तेमाल किया गया "ll" कमांड:
unalias ll
आप अपने द्वारा परिभाषित aliases और किसी भी पूर्वनिर्धारित aliases को हटाने के लिए unalias का उपयोग कर सकते हैं।
अपने सिस्टम से सभी aliases को हटाने के लिए, -a (सभी) विकल्प का उपयोग करें:
unalias -a
Bash की स्मृति की हानि स्थायी नहीं होगी, हालांकि। अगली बार जब आप एक टर्मिनल विंडो खोलेंगे, तो "भूले हुए" aliases वापस आ जाएंगे। वास्तव में उन्हें मिटाने के लिए आपको उन्हें अपने ".bashrc" और ".bash_alias" फाइलों से हटाना होगा।
यदि आप सोचते हैं कि आप कभी उन्हें वापस चाहेंगे, तो उन्हें अपने ".bashrc" फाइल से न हटाएं। इसके बजाय, प्रत्येक alias लाइन की शुरुआत में हैश # जोड़कर उन्हें कमेंट आउट करें। अपनी ".bash_alias" फाइल को अप्रभावी बनाने के लिए, उसका नाम बदलें। यदि आपकी ".bashrc" फाइल इसे नहीं देख सकती, तो यह इसे पढ़ नहीं पाएगी। अपने aliases को पुनर्स्थापित करने के लिए इन चरणों को उलटना एक तुच्छ मामला है।
किसी alias को अस्थायी रूप से बायपास करने के लिए (मान लें हमने ls को ls -a से alias किया है), हम टाइप कर सकते हैं:
\ls
परिणामस्वरूप सामान्य कमांड को कॉल किया जाएगा, न कि aliased संस्करण।
Alias कमांड के लिए सहायता:
- --help विकल्प: यह सहायता जानकारी प्रदर्शित करता है।
सिंटैक्स:
alias --help
Shell Functions
कभी-कभी एक ऐसा alias चाहिए जो एक या अधिक आर्गुमेंट्स स्वीकार कर सके, तब bash functions का उपयोग किया जाता है।
सिंटैक्स
Bash function बनाना बहुत कठिन नहीं है। उन्हें निम्न दो अलग-अलग फॉर्मेट्स में से किसी एक में घोषित किया जा सकता है:
function_name () { [commands] }
या
function function_name { [commands] }
हम इस दूसरे फॉर्म को एक लाइन में संकुचित कर सकते हैं और कमांड्स को सेमिकोलन से अलग कर सकते हैं। अंतिम कमांड के बाद भी एक सेमिकोलन आना चाहिए:
function_name () { command1; command2; }
Aliases की तरह, Bash शेल फंक्शन्स को ".bashrc" फाइल के भीतर परिभाषित किया जा सकता है, लेकिन अक्सर उन्हें अपनी स्वयं की परिभाषा फाइल में रखना अधिक साफ होता है। हम इसे ".bash_functions" कहेंगे, ".bash_aliases" फाइल के लिए उपयोग किए गए कन्वेंशन का पालन करते हुए।
इसका मतलब है कि हमें ".bashrc" फाइल को हमारी परिभाषाओं को पढ़ने के लिए बताना होगा। हम उस कोड स्निपेट को कॉपी और संशोधित कर सकते हैं जो ".bash_aliases" फाइल को पढ़ता है। gedit लॉन्च करें और इस कमांड से ".bashrc" फाइल लोड करें:
gedit .bashrc
आपको नीचे दिखाए गए हाइलाइटेड सेक्शन को जोड़ना होगा।
आप alias सेक्शन को हाइलाइट कर सकते हैं और Ctrl+C दबा सकते हैं और फिर जहां आप नया सेक्शन चाहते हैं वहां जाकर Ctrl+V दबाकर टेक्स्ट की एक कॉपी पेस्ट कर सकते हैं। फिर आपको बस इतना करना है कि दोनों स्थानों पर जहां ".bash_aliases" लिखा है, उसे ".bash_functions" में बदल दें।
उन परिवर्तनों को सेव करें और gedit बंद करें।
अब हम ".bash_functions" फाइल बनाने और संपादित करने जा रहे हैं, और इसमें एक फंक्शन परिभाषा डालेंगे।
touch .bash_functions gedit .bash_functions
यह gedit में खाली ".bash_functions" फाइल खोलेगा।
हम up नामक एक सरल फंक्शन जोड़ने जा रहे हैं। up एक सिंगल कमांड लाइन पैरामीटर लेगा, जो एक अंक है। up फिर cd .. को उतनी बार कॉल करेगा। इसलिए, यदि आपने कमांड का उपयोग किया
up 2
up cd .. को दो बार कॉल करेगा और डायरेक्टरी ट्री में दो लेवल ऊपर चला जाएगा।
फंक्शन को परिभाषित करने के अलग-अलग तरीके हैं। यहां एक है:
function up() {
शब्द function वैकल्पिक है। यदि आप पारंपरिक हैं, तो इसका उपयोग करें, यदि आप इसे टाइप करने में परेशान नहीं करना चाहते, तो इसे छोड़ दें।
यहां gedit में हमारा पूरा फंक्शन है:
function up() {
levels=$1
while [ "$levels" -gt "0" ]; do
cd ..
levels=$(($levels - 1))
done
}
सेव करें ये परिवर्तन और gedit बंद करें।
हम ".bashrc" में कमांड्स को पढ़ेंगे और 실행 करेंगे जो हमारी ".bash_functions" फाइल में कमांड्स को पढ़ेगा और 실행 करेगा।
. .bashrc
हम डायरेक्टरी ट्री में किसी स्थान पर जाकर और up का उपयोग करके डायरेक्टरी ट्री में "उच्च" बिंदु पर वापस जाकर फंक्शन का टेस्ट कर सकते हैं।
cd ./work/backup/ up 2
फंक्शन काम करता है। हम ट्री में दो डायरेक्टरी लेवल ऊपर चले गए हैं।
type के साथ ट्रैक रखना
जैसे-जैसे आप aliases का एक सूट और फंक्शन्स की एक लाइब्रेरी बनाते हैं, यह याद रखना मुश्किल हो सकता है कि कोई विशेष कमांड alias है या फंक्शन। आप आपको याद दिलाने के लिए "type" कमांड का उपयोग कर सकते हैं। यहां अच्छी बात यह है कि आपको परिभाषा भी देखने को मिलती है।
आइए अपने ftc alias और up फंक्शन पर type का उपयोग करें।
type ftc type up
हमें प्रत्येक के कमांड प्रकार का एक बहुत उपयोगी रिमाइंडर मिलता है, साथ ही उनकी परिभाषाएं भी।
संग्रह करना शुरू करें
Aliases और functions आपके कमांड लाइन के उपयोग को जबरदस्त रूप से तेज कर सकते हैं। वे कमांड सीक्वेंस को छोटा कर सकते हैं, और वे आपको उन विकल्पों को बेक-इन करने देते हैं जिनका उपयोग आप हमेशा मानक कमांड्स के साथ करते हैं। हर बार जब आप एक निफ्टी वन-लाइनर या उपयोगी फंक्शन देखते हैं, तो आप इसे अनुकूलित और वैयक्तिकृत कर सकते हैं, और फिर इसे अपनी ".bash_aliases" या ".bash_functions" फाइलों में जोड़ सकते हैं। इनका व्यापक उपयोग शेल में आपके समय को अधिक आनंददायक और कम जटिल बनाने में मदद कर सकता है।
मौजूदा कमांड्स को संभावित रूप से विनाशकारी व्यवहार के साथ पुनर्परिभाषित करने से सावधान रहें। यहां तक कि विपरीत करना और एक कमांड को एक सुरक्षित संस्करण से alias करना (उदाहरण के लिए रिकर्सिवली डिलीट करने से पहले हमेशा पुष्टि मांगना) आपको काटने के लिए वापस आ सकता है जब आप पहली बार बिना इसके सिस्टम पर हों जब आप इस पर भरोसा करना सीख चुके हों। उन उम्मीदवारों को खोजने के लिए जो aliases बनाने के लिए अच्छे हो सकते हैं, अपने इतिहास में अपने सबसे अधिक उपयोग किए जाने वाले कमांड्स को खोजना एक अच्छा विचार हो सकता है।