आपने बैश के बारे में सुना होगा—अधिकांश लिनक्स डिस्ट्रोस पर डिफ़ॉल्ट शेल। एक और शेल है जो लिनक्स पर प्रीइंस्टॉल्ड आता है: बॉर्न शेल।
बॉर्न शेल सबसे पुराने शेल में से एक है जो अभी भी आधुनिक लिनक्स सिस्टम पर उपयोग में है, भले ही यह बैश के रूप में व्यापक रूप से उपयोग नहीं किया जाता है। यहाँ आपको लिनक्स पर बॉर्न शेल के बारे में जानने की आवश्यकता है।
बॉर्न शैल क्या है?
बॉर्न शेल, जिसे अक्सर "श" के रूप में संक्षिप्त किया जाता है, का नाम ब्रिटिश कंप्यूटर वैज्ञानिक स्टीफ़न आर. बॉर्न, जिन्होंने 1978 में बेल लैब्स में काम करते हुए इसे विकसित किया था। शेल ने पहले के थॉम्पसन शेल को बदल दिया, जिसे यूनिक्स के मूल रचनाकारों में से एक, केन थॉम्पसन ने लिखा था।
बॉर्न शेल ने 1979 में संस्करण 7 यूनिक्स के साथ शुरुआत की। इसमें फ्लो कंट्रोल, वेरिएबल्स और बेहतर स्ट्रिंग हैंडलिंग जैसी विशेषताएं थीं। इन सुविधाओं ने अन्य प्रोग्रामों को कॉल करने के तरीके के बजाय शेल को प्रोग्रामिंग भाषा के रूप में उपयोग करना आसान बना दिया।
जबकि बॉर्न शेल यूनिक्स सिस्टम में पोर्टेबल स्क्रिप्ट लिखने के लिए लोकप्रिय रहा, यह था सी शेल, कोर्नशेल, बॉर्न अगेन शेल, जिसे बैश के नाम से भी जाना जाता है, और जेड द्वारा इंटरैक्टिव उपयोग के लिए प्रतिस्थापित किया गया शंख। इन गोले जैसी सुविधाओं की पेशकश की
कमांड इतिहास और कमांड-लाइन संपादन जिसने उपयोगकर्ताओं और प्रशासकों के लिए जीवन को आसान बना दिया।कोर्नशेल, बैश और जेड शेल (बाद में कवर किया गया) में बॉर्न शेल से प्रभावित सिंटैक्स हैं।
पर्ल और पायथन जैसी अधिक उन्नत सुविधाओं के साथ अधिक शक्तिशाली क्रॉस-प्लेटफ़ॉर्म स्क्रिप्टिंग भाषाएं भी काफी हद तक शेल स्क्रिप्टिंग को बदल देती हैं।
फिर भी, बॉर्न शेल व्यापक रूप से समझा जाता है और लिनक्स प्रोग्राम के साथ आपूर्ति की गई बहुत सी स्क्रिप्ट विभिन्न कार्यों के लिए इसके सिंटैक्स का उपयोग करती हैं।
बॉर्न शेल के व्यवहार को संहिताबद्ध किया गया था पॉज़िक्स मानक, इतने सारे आधुनिक यूनिक्स-जैसी प्रणालियाँ संगत शेल का उपयोग करके इसे किसी तरह से लागू करती हैं।
आधुनिक बॉर्न शैल विकल्प
लिनक्स सिस्टम पर मूल बॉर्न शेल के लिए कई ओपन-सोर्स आधुनिक विकल्प हैं। यहाँ कुछ सबसे प्रसिद्ध हैं:
1. बॉर्न अगेन शेल (बैश)
नाम बॉर्न अगेन शेल (बैश) बॉर्न शेल पर एक नाटक है। यह खोल मूल रूप से जीएनयू प्रणाली के एक घटक के रूप में विकसित किया गया था, जो कई वर्षों से लिनक्स से पहले था।
मूल रूप से बॉर्न शेल के लिए लिखी गई स्क्रिप्ट के साथ यह काफी हद तक संगत है। इसमें कोर्नशेल द्वारा संचालित कमांड-लाइन संपादन जैसी विशेषताएं भी शामिल हैं।
बैश कई लिनक्स वितरणों पर डिफ़ॉल्ट शेल है और इस प्रकार यह अपने आप में एक वास्तविक मानक बन गया है।
2. के शेल
के शेल, जिसे ksh के रूप में भी जाना जाता है, मूल रूप से 1980 के दशक में बेल लैब्स में डेविड कोर्न द्वारा विकसित किया गया था। बॉर्न शेल के शीर्ष पर निर्मित, कोर्नशेल ने जॉब कंट्रोल, एरेज़ और कमांड-लाइन एडिटिंग जैसी कुछ अतिरिक्त सुविधाएँ पेश कीं। उत्तरार्द्ध एक क्रांतिकारी विशेषता थी जब यह पहली बार दिखाई दिया क्योंकि यह सी शेल के इतिहास तंत्र का उपयोग करने की तुलना में बहुत आसान था।
यदि आपको पहले जारी किए गए कमांड को फिर से संपादित करने की आवश्यकता है, तो आप ऐसा करने के लिए Vi या Emacs जैसी कमांड का उपयोग कर सकते हैं।
Oracle Solaris जैसे कुछ व्यावसायिक Linux सिस्टम पर KornShell डिफ़ॉल्ट था। जैसा कि मूल कोर्नशेल को शुरू में एटी एंड टी द्वारा मालिकाना लाइसेंस के तहत जारी किया गया था, पीडीकेश नाम का एक ओपन-सोर्स संस्करण अंततः जारी किया गया था।
3. अल्मक्विस्ट / डेबियन अल्मक्विस्ट शेल
अल्मक्विस्ट शेल मूल रूप से केनेथ अल्मक्विस्ट द्वारा लिखा गया था और बॉर्न शेल के लिए एक हल्के प्रतिस्थापन के रूप में अभिप्रेत था। कई बीएसडी सिस्टम इसे श के कार्यान्वयन के रूप में शामिल करते हैं।
एक संस्करण को 1990 के दशक में डेबियन में पोर्ट किया गया था और इसे डेबियन अल्मक्विस्ट शेल के रूप में जाना जाता है। जैसा कि नाम से पता चलता है, यह डेबियन और उबंटू सिस्टम पर श का कार्यान्वयन है।
4. जेड शैल
जेड खोल, या zsh, सबसे नए गोले में से एक है, जिसे मूल रूप से 1990 में पॉल फाल्स्टेड द्वारा विकसित किया गया था। Z शेल अपनी उन्नत सुविधाओं के लिए प्रसिद्ध हो गया है। एक अच्छा उदाहरण पुनरावर्ती ग्लोबिंग है, या उपनिर्देशिकाओं में वाइल्डकार्ड से मिलान करने की क्षमता है।
Z शेल macOS और Kali Linux के लिए डिफ़ॉल्ट लॉगिन शेल है।
बॉर्न शैल संगतता
जबकि ये शेल मूल रूप से बॉर्न शेल के लिए लिखी गई स्क्रिप्ट के साथ काफी हद तक संगत हैं, उनके व्यवहार को मूल शेल की तरह अधिक बदलने के तरीके हैं।
इसे करने का मुख्य तरीका है एक प्रतीकात्मक कड़ी. अधिकांश सिस्टम सिमलिंक करेंगे /bin/sh बैश या किसी अन्य शेल के लिए। जब इस तरह से आह्वान किया जाता है, तो शेल बॉर्न शेल के साथ संगतता मोड में प्रवेश करेगा।
आप देख सकते हैं कि कौन सा खोल है /bin/sh से जुड़ा हुआ है एलएस कमांड:
एलएस -एल / बिन / एसएच
अब आप बॉर्न शेल के बारे में जानते हैं
यूनिक्स जैसी प्रणालियों पर स्क्रिप्टिंग के लिए बॉर्न शेल सबसे पुराने मानकों में से एक है। भले ही इसे अन्य शैल द्वारा प्रतिस्थापित किया गया हो, यह अभी भी दूसरों द्वारा लिखी गई स्क्रिप्ट चलाने के लिए महत्वपूर्ण है।
कोडिंग के लिए बैश सर्वश्रेष्ठ बॉर्न डेरिवेटिव्स में से एक है, विशेष रूप से चरों के लिए इसके दृष्टिकोण के लिए। इसके कुछ अनूठे चर हैं जो आपको अपनी अगली परियोजना के लिए इस पर विचार करना चाहते हैं।