function_name () {कमांड 1; command2; }
Lika उपनाम, बैश शेल फ़ंक्शंस को '.bashrc' फ़ाइल के भीतर परिभाषित किया जा सकता है, लेकिन यह अक्सर उन्हें अपनी परिभाषा फ़ाइल में रखने के लिए neater है। हम '.bash_aliases' फ़ाइल के लिए उपयोग किए गए सम्मेलन का अनुसरण करते हुए इसे '। Bash_functions' कहते हैं।
इसका मतलब है कि हमें अपनी परिभाषाओं में पढ़ने के लिए '.bashrc' फ़ाइल को बताने की आवश्यकता है। हम '.bash_aliases' फ़ाइल में पढ़े गए कोड के स्निपेट को कॉपी और संशोधित कर सकते हैं। Gedit लॉन्च करें और इस कमांड के साथ '.bashrc' फ़ाइल को लोड करें:
gedit .bashrc
gedit .bashrc फ़ाइल
आपको नीचे दिखाए गए हाइलाइट किए गए अनुभाग को जोड़ने की आवश्यकता है।
आप अन्य अनुभाग को हाइलाइट कर सकते हैं और Ctrl + C दबा सकते हैं और फिर आप नए अनुभाग की तरह आगे बढ़ सकते हैं और पाठ की प्रतिलिपि पेस्ट करने के लिए Ctrl + V दबा सकते हैं। फिर आपको केवल उन दो स्थानों को बदलने की ज़रूरत है, जहां यह '.bash_aliases' को '.bash_facions' कहता है।
.Bashrc फ़ाइल में bash_functions जोड़ना
हम उन परिवर्तनों को सहेज सकते हैं और gedit को बंद कर सकते हैं।
अब हम '.bash_functions' फ़ाइल बनाने और संपादित करने जा रहे हैं, और इसमें एक फंक्शन डेफिनिशन डाल सकते हैं।
स्पर्श .bash_functions gedit .bash_functions
बनाना और संपादन .bash_functions
यह खाली '.bash_functions' फ़ाइल को gedit में खोलेगा।
हम एक साधारण फंक्शन जोड़ने जा रहे हैं। ऊपर एक एकल कमांड लाइन पैरामीटर लगेगा, जो एक अंक है। ऊपर तो सीडी कॉल करेगा .. उस समय की संख्या। इसलिए, यदि आपने कमांड का उपयोग किया है
ऊपर 2
अप सीडी को कॉल करेगा .. दो बार और डायरेक्टरी ट्री में दो लेवल को ऊपर ले जाएगा।
किसी फ़ंक्शन को परिभाषित करने के विभिन्न तरीके हैं। यहां एक है:
कार्य () {
शब्द समारोह वैकल्पिक है। यदि आप एक परंपरावादी हैं, तो इसका उपयोग करें, यदि आप इसे टाइप करने से परेशान नहीं हो सकते हैं, तो इसे छोड़ दें।
यहाँ gedit में हमारा पूरा कार्य है:
संपादन .bash_functions फ़ाइल
कार्य () {
यह हमारी फ़ंक्शन परिभाषा की शुरुआत को चिह्नित करता है, और यह फ़ंक्शन को नाम देता है।
स्तरों = $ 1
यह एक वैरिएबल बनाता है जिसे कहा जाता है स्तरों और इसे पहले पैरामीटर के मान पर सेट करता है। जब वे फ़ंक्शन को कॉल करते हैं तो यह पैरामीटर उपयोगकर्ता द्वारा प्रदान किया जाने वाला एक अंक होने वाला है। $ 1 का अर्थ है 'पहली कमांड लाइन पैरामीटर।'
जबकि ['$ स्तर' -gt '0']; कर
हम फिर एक लूप दर्ज करते हैं जो तब 'जब' मूल्य ' का ' स्तरों 'सकारात्मक या शून्य से अधिक है, वह करें जो लूप के शरीर में निहित है।'
लूप के शरीर के अंदर, हमारे पास दो कमांड हैं। वो हैं:
सीडी ..
निर्देशिका ट्री में एक स्तर ऊपर ले जाएँ।
स्तर = $ (($ स्तर - 1))
स्तरों को एक नए मूल्य पर सेट करें, जो कि इसके वर्तमान मूल्य से एक कम है।
हम फिर लूप के शीर्ष पर वापस जाते हैं, स्तरों और शून्य के मूल्य के बीच तुलना एक बार फिर से की जाती है। यदि 'स्तर' शून्य से अधिक है, तो लूप के शरीर को फिर से निष्पादित किया जाता है। यदि यह सकारात्मक नहीं है या शून्य से अधिक है, तो लूप समाप्त हो गया है, और हम किए गए विवरण के माध्यम से छोड़ देते हैं, और फ़ंक्शन खत्म हो गया है।
सहेजें ये परिवर्तन और करीब एडिट ।
हम '.bashrc' में उन कमांडों को पढ़ते और उन पर अमल करते हैं, जिन्हें हमारी '.bash_functions' फ़ाइल में कमांड को पढ़ना और निष्पादित करना चाहिए।
। .bashrc
बुलाओ ..bashrc
हम निर्देशिका ट्री में कुछ स्थान पर जाकर और निर्देशिका ट्री में 'उच्च' बिंदु पर वापस जाने के लिए फ़ंक्शन का परीक्षण कर सकते हैं।
cd ./work/backup/ ऊपर 2
कार्य करना
कार्य करता है। हमने पेड़ में दो डायरेक्टरी का स्तर ऊँचा किया है।
प्रकार के साथ ट्रैक रखना
जैसा कि आप उपनामों और कार्यों के पुस्तकालय के एक सूट का निर्माण करते हैं, यह याद रखना मुश्किल हो सकता है कि क्या कोई विशेष आदेश एक उपनाम या एक फ़ंक्शन है। आप 'का उपयोग कर सकते हैं प्रकार' आपको याद दिलाने की आज्ञा। यहां की शांत बात यह है कि आपको परिभाषा देखने को भी मिलती है।
हमारे पर प्रयोग का प्रकार लिखें एफटीसी उर्फ और हमारे समारोह।
टाइप ftc टाइप करें
प्रकार का उपयोग
हमें एक बहुत ही उपयोगी अनुस्मारक मिलता है कि प्रत्येक को किस प्रकार की कमांड है, साथ में उनकी परिभाषाएं भी।
संग्रह करना शुरू करें
उपनाम और फ़ंक्शन कमांड लाइन के आपके उपयोग को बहुत तेज़ी से बढ़ा सकते हैं। वे कमांड अनुक्रम को छोटा कर सकते हैं, और वे आपको उन विकल्पों में सेंध लगाने देते हैं जो आप हमेशा मानक कमांड के साथ उपयोग करते हैं। हर बार जब आप निफ्टी वन-लाइनर या उपयोगी फ़ंक्शन देखते हैं, तो आप इसे अनुकूलित और निजीकृत कर सकते हैं, और फिर अपनी '.bash_aliases' या '.bash_functions' फ़ाइलों को जोड़ सकते हैं। इन का व्यापक उपयोग खोल में अपना समय अधिक सुखद और कम जटिल बनाने में मदद कर सकता है।
संभावित विनाशकारी व्यवहार वाले मौजूदा आदेशों को फिर से परिभाषित करने से सावधान रहें। यहां तक कि विपरीत करना और एक सुरक्षित संस्करण के लिए एक आदेश देना (हमेशा पुनरावर्ती को हटाने से पहले पुष्टि के लिए पूछ रहा है, उदाहरण के लिए) आपको काटने के लिए पहली बार वापस आ सकता है जब आप एक सिस्टम पर बिना एक बार आप इस पर भरोसा करने के लिए आए हैं । उम्मीदवारों को खोजने के लिए जो उपनाम बनाने के लिए अच्छा हो सकता है, आपके सबसे अधिक इस्तेमाल किए जाने वाले आदेशों के लिए अपने इतिहास को खोजना एक अच्छा विचार हो सकता है।
12 मिनट पढ़े