क्या आप कभी लिनक्स में "स्क्रिप्टिंग" सीखना चाहते थे? उन्हें बनाना आपके विचार से आसान है। कभी-कभी स्क्रिप्ट (जिसे अक्सर खोल या बैश स्क्रिप्ट के रूप में जाना जाता है) जटिल प्रोग्राम के साथ वास्तविक प्रोग्राम होते हैं। अन्य बार वे उन कार्यों की एक लंबी सूची हैं जो उपयोगकर्ताओं को लिनक्स के तहत चीजें तेजी से और आसान बनाने के लिए एक साथ रखती हैं।

इस आलेख में हमने एक त्वरित मार्गदर्शिका बनाने का निर्णय लिया है कि लिनक्स के तहत मूल शैल स्क्रिप्ट कैसे बनाएं। यह ट्यूटोरियल आपको बैश या स्क्रिप्टिंग विशेषज्ञ में नहीं बदल देगा। इसके बजाए, यह आपको दिखाएगा कि लिनक्स में स्क्रिप्टिंग शुरू करने के लिए कितना आसान है (और सर्वोत्तम प्रथाओं)।

आप एक स्क्रिप्ट क्यों बनायेंगे?

लिनक्स में स्क्रिप्ट बनाना एक बहुत ही उपयोगी कौशल है। यहां तक ​​कि यदि आप बैश को पूरी तरह से समझ नहीं पाते हैं, तो आप टर्मिनल के अपने सीमित ज्ञान को स्वचालित करने और कुछ कार्यों को "बड़े पैमाने पर पूरा करने" के लिए उपयोग कर सकते हैं, या बस एक साथ कई अनुप्रयोगों को खोलने के लिए उपयोग कर सकते हैं।

उदाहरण के लिए: शायद आपने आर्क लिनक्स को स्क्रैच से बनाया है। ऑपरेटिंग सिस्टम सभी बुनियादी पैकेजों के साथ स्थापित किया गया है, और यह ऑपरेटिंग सिस्टम शुरू होने पर टर्मिनल पर बूट हो सकता है। आर्क लिनक्स को स्थापित करने में समय लगता है, इसलिए प्रक्रिया पूरी नहीं हुई है।

यह इस बिंदु पर है जहां उपयोगकर्ता एक बैश स्क्रिप्ट लिख सकता है और सब कुछ एक साथ पूरा कर सकता है। इनमें से कोई भी प्रोग्रामिंग नहीं है, या उस मामले के लिए उन्नत है। हालांकि, इस तथ्य को देखते हुए कि उपयोगकर्ता आर्क लिनक्स के काम के तरीके के बारे में पर्याप्त समझता है, वे लगभग पूरी पोस्ट-सेटअप प्रक्रिया (डेस्कटॉप वातावरण, ड्राइवर, उपयोगकर्ता सेटअप इत्यादि) को स्वचालित करने में सक्षम होंगे।

आपकी बैश स्क्रिप्ट की एकमात्र सीमा आपका स्वयं का लिनक्स और बैश ज्ञान है! उन्हें बनाना आपके विचार से आसान है।

शुरू करना - शेबांग

कोड लिखते समय, चीजों को निर्दिष्ट करने की आवश्यकता होती है और संसाधन लोड होते हैं। खोल के साथ पटकथा करते समय, कुछ चीजों को भी निर्दिष्ट करने की आवश्यकता होती है। बैश स्क्रिप्टिंग में इसे "शेबांग" के नाम से जाना जाता है। स्क्रिप्ट में उपयोग किए जाने वाले शेबैंग स्क्रिप्ट को बताते हैं कि इसे किस दुभाषिया के तहत निष्पादित किया जाना चाहिए। यह आपके सिस्टम में उपलब्ध बैश या कोई अन्य स्क्रिप्ट हो सकता है। ध्यान दें कि विभिन्न भाषाओं में अपने स्वयं के शेबांग हैं।

उदाहरण के लिए: एक पायथन लिपि लिखते समय, शेबांग #!/usr/bin/python आदि होगा।

बैश में कई अलग-अलग शेबैंग हैं जिनका उपयोग किया जा सकता है, लेकिन अधिकांश उपयोगकर्ताओं ने शायद #!/bin/bash है। एक सामान्य नियम के रूप में, एक साधारण स्क्रिप्ट लिखते समय #!/bin/bash उपयोग करें और इसे लिनक्स से बाहर ले जाने की योजना न बनाएं। सभी आधुनिक लिनक्स वितरण बैश के समान संस्करण पर हैं, और बैश खोल आमतौर पर एक ही स्थान पर स्थित होता है।

एक और शेबांग जो स्वयं को साबित करता है वह #!/usr/bin/env bash shebang है। यह पोर्टेबिलिटी के लिए डिज़ाइन किया गया है और यदि स्क्रिप्ट को अन्य यूनिक्स-जैसे ऑपरेटिंग सिस्टम (बीएसडी, मैकोज़ इत्यादि) पर चलाने के लिए डिज़ाइन किया गया है तो इसका उपयोग किया जाना चाहिए।

सर्वोत्तम प्रथाएं

यदि लेखक इसे इस तरह से बनाता है तो बैश में लेखन स्क्रिप्ट एक जटिल प्रक्रिया हो सकती है। अक्सर नहीं, स्क्रिप्ट केवल विभिन्न परिचालनों का संग्रह है। फ़ाइल को स्थानांतरित करना, कुछ डाउनलोड करना, प्रोग्राम इंस्टॉल करना, और उस तरह की चीज़।

  • ध्यान रखें कि बैश एक ऐसी भाषा है जिसे सिस्टम पर फ़ाइलों और प्रक्रियाओं में हेरफेर करने के लिए डिज़ाइन किया गया है। यदि बैश आपकी आवश्यकताओं को पूरा करता है, तो यह अच्छा है। हालांकि, समझें कि उन्नत प्रोग्रामिंग के लिए, बैश वास्तव में सही विकल्प नहीं है, और पायथन जैसे कुछ पर जाना सबसे अच्छा होगा।
  • यदि आपकी योजना केवल लिनक्स प्लेटफार्म से अधिक स्क्रिप्ट का उपयोग करना है तो अपनी स्क्रिप्ट "एसएच" संगत और ".sh" प्रारूप में बनाएं। यद्यपि अन्य यूनिक्स जैसी ऑपरेटिंग सिस्टमों में "बैश-जैसे" गोले हो सकते हैं, कुछ को बिल्कुल भी परेशान नहीं होता है, और इसके लिए तैयार होना अच्छा होता है।
  • बैश खोल जानें और यह कैसे काम करता है। यह आपकी स्क्रिप्ट को बेहतर लिखने में आपकी सहायता करेगा।
  • हमेशा एक शेबांग का उपयोग करें और अधिक महत्वपूर्ण बात: सही का उपयोग करें । इसका मतलब एक अच्छी लिपि और एक भयानक व्यक्ति के बीच का अंतर हो सकता है जो सही काम नहीं करता है।
  • हमेशा हर ऑपरेशन पर टिप्पणी करें। छः महीनों में आप अपनी लिपि पर वापस आ सकते हैं और आश्चर्यचकित हो सकते हैं कि सब कुछ क्या है, इसलिए यह महत्वपूर्ण है कि आपकी स्क्रिप्ट अच्छी तरह से प्रलेखित हो और समझने में आसान हो (आपके और किसी और को जो इसे देख सके)।
  • अपना कोड पठनीय बनाओ। यहां तक ​​कि यदि आपकी स्क्रिप्ट कुछ जटिल नहीं है, तो भी इसे समझना चाहिए, और उन्हें बनाना आपके विचार से आसान है।
  • दूसरों को देने से पहले त्रुटियों के लिए अपनी स्क्रिप्ट का परीक्षण करें। दूसरों के लिए दूसरों को बग परीक्षण न करें। आदर्श रूप से, लोगों को उपयोग करने के लिए उन्हें भेजने से पहले स्क्रिप्ट को काम करना चाहिए।

एक स्क्रिप्ट बनाना

स्क्रिप्टिंग शुरू करने के लिए, आपको केवल एक टेक्स्ट एडिटर चाहिए। कोई भी साधारण पाठ संपादक करेगा - इसे जटिल या व्यापक नहीं होना चाहिए। इस उदाहरण के लिए हम जीएडिट का उपयोग करके एक साधारण उबंटू अपडेट स्क्रिप्ट बनायेंगे।

 #! / Bin / bash 

स्क्रिप्ट का यह पहला भाग शेबांग है, जैसा कि पहले उल्लेख किया गया है। यह स्क्रिप्ट को दुभाषिया को बताने की अनुमति देता है कि कोड को समझने के लिए इसका क्या उपयोग करना चाहिए।

अगला, चलिए एक टिप्पणी लिखें। यह किसी भी व्यक्ति को स्क्रिप्ट का उपयोग करने की अनुमति देगा ताकि यह समझ सके कि कोड क्या करना है। टिप्पणियां "#" प्रतीक रखकर एक स्क्रिप्ट में जोड़ा जा सकता है। इसके बाद कुछ भी लिपि द्वारा नहीं उठाया जाएगा।

 # मेरा सरल उबंटू अपडेट स्क्रिप्ट 

अब स्क्रिप्ट में कोड जोड़ने का समय है। इस मामले में हम एक बैश स्क्रिप्ट बनाने पर काम कर रहे हैं जो उत्तरार्ध में उबंटू के दो अपडेट कमांड चलाएगा। अद्यतन सॉफ़्टवेयर स्रोत कमांड के साथ शुरू करें।

 सुडो एपीटी अपडेट 

स्क्रिप्ट का दूसरा भाग apt upgrade कमांड है। यह आदेश पहले से चेक किए गए अद्यतनों को स्थापित करने की अनुमति देता है। अंत में एक जोड़ें ताकि स्क्रिप्ट को किसी उपयोगकर्ता इंटरैक्शन की आवश्यकता न हो। यह कमांड को अपने आप अपडेट करने की अनुमति देगा।

 sudo apt उन्नयन -y 

स्क्रिप्ट को ".sh" एक्सटेंशन से सहेजें। उदाहरण के लिए, "myscript.sh।"

स्क्रिप्ट चलाने के लिए, टर्मिनल खोलें और टाइप करें:

 सुडो chmod + x myscript.sh 

यह नव निर्मित स्क्रिप्ट को निष्पादन योग्य के रूप में चिह्नित करेगा। स्क्रिप्ट के लिए ऐसा करने की हमेशा आवश्यकता नहीं होती है, क्योंकि अधिकांश भाग के लिए बैश इसे किसी भी तरह से चलाएगा। भले ही, यह स्क्रिप्टिंग करते समय एक अच्छा अभ्यास है।

नव निर्मित स्क्रिप्ट निष्पादित करने के लिए, निम्न आदेश चलाएं:

 सुडो बाश myscript.sh। 

फाइल एक्सटेंशन्स

स्क्रिप्ट के लिए फ़ाइल एक्सटेंशन में कोई अंतर नहीं है। ".sh" फ़ाइल एक्सटेंशन वाली फ़ाइल का नामकरण "प्रोग्राम" के तरीके को प्रभावित करने के लिए बहुत कम करता है। एक बैश स्क्रिप्ट अभी भी फ़ाइल एक्सटेंशन के साथ नहीं चलती - रिक्त टेक्स्ट फाइलें और जब तक सही आदेश और तर्क मौजूद होते हैं तब तक सब कुछ।

भले ही बैश खोल फ़ाइल एक्सटेंशन को अनदेखा करता है, इसका मतलब यह नहीं है कि स्क्रिप्ट लेखक को चाहिए। कुछ डेस्कटॉप वातावरण जो स्टार्टअप पर चलाने के लिए खोल स्क्रिप्ट सेट करने की अनुमति देते हैं, सही ".sh" फ़ाइल एक्सटेंशन के लिए स्क्रिप्ट पर निर्भर करते हैं। यह संगठन उद्देश्यों के लिए भी मदद करता है।

जब यह नीचे आता है, तो अधिकांश शैल स्क्रिप्ट को पोर्टेबिलिटी के लिए ".sh" फ़ाइलों के रूप में सहेजा जाता है। "Sh" के पास बैश के साथ कुछ भी नहीं है, और स्क्रिप्ट किसी भी संगत खोल के साथ चल सकती है।

वैकल्पिक रूप से, स्क्रिप्ट को .bash, .ksh (यूनिक्स कॉर्न शैल) आदि के रूप में सहेजा जा सकता है। ये फ़ाइल एक्सटेंशन कम हैं और वास्तव में एक स्क्रिप्ट की उपयोगिता को सीमित करते हैं। यह इस तथ्य के कारण है कि वे केवल उन शैलियों के लिए डिज़ाइन किए गए हैं जो उन एक्सटेंशन का उपयोग करते हैं।

संहिता संसाधन

उपयोगी बैश स्क्रिप्ट की तलाश करने वालों के लिए, Reddit पर बैश उपयोगकर्ता रिपोजिटरी देखें। यह साफ और उपयोगी स्क्रिप्ट का संग्रह है जो उपयोग और संशोधित करने के लिए स्वतंत्र है!

इसके अतिरिक्त, जो बैश की उन्नत प्रकृति और शैल के साथ प्रोग्रामिंग सीखना चाहते हैं, उन्हें फ्रीकोड की जांच करनी चाहिए। वेबसाइट पर एक संपूर्ण सबक गाइड है जो उन्नत बैश स्क्रिप्टिंग के बारे में जानने के लिए सबकुछ सिखाता है।

निष्कर्ष

यद्यपि लिनक्स पर बैश के साथ स्क्रिप्टिंग एक अनूठी विशेषता नहीं है (मैक्स में भी बैश है), यह लिनक्स उपयोगकर्ताओं को अधिक समग्र रूप से मदद करने में मदद करता है। टर्मिनल के तहत इतना सारे लिनक्स को पूरा किया जा सकता है, सीखना कि शैल में हेरफेर करना कितना उपयोगी है।

अपने जीवन को आसान बनाने के लिए लिनक्स के तहत आप किस बैश स्क्रिप्ट का उपयोग करते हैं? नीचे हमें बताओ!

फ़ीचर छवि: जेएम 3