लिनक्स कुछ शक्तिशाली टूल्स के साथ बनाया गया है, जो विंडोज में अनुपलब्ध हैं। ऐसा ही एक महत्वपूर्ण टूल है शेल स्क्रिप्टिंग। विंडोज हालांकि ऐसा टूल लेकर आता है लेकिन हमेशा की तरह यह अपने लिनक्स समकक्ष की तुलना में बहुत कमजोर है। शेल स्क्रिप्टिंग/प्रोग्रामिंग कमांड(s) को निष्पादित करना संभव बनाता है, वांछित आउटपुट प्राप्त करने के लिए पाइप्ड, दिन-प्रतिदिन के उपयोग को स्वचालित करने के लिए। वास्तव में सर्वर पर इन दिन-प्रतिदिन के कार्यों को स्वचालित करना एक महत्वपूर्ण कार्य है, जिसे सिस्टम एडमिनिस्ट्रेटर को करना होता है और अधिकांश एडमिन इसे आवश्यकतानुसार निष्पादित होने वाली स्क्रिप्ट लिखकर प्राप्त करते हैं।
लिनक्स में सबसे अधिक उपयोग किया जाने वाला शेल BASH है जो Bourne Again Shell के लिए खड़ा है। लिनक्स में आमतौर पर पाए जाने वाले अन्य शेल हैं:
- Almquist shell (ash)
- Bourne shell (sh)
- Debian Almquist shell (dash)
- korn shell (ksh)
- Public domain korn shell (pdksh)
- MirBSD korn shell (mksh)
- Z shell (zsh)
- Busybox, आदि।
हमने 5 अलग-अलग पोस्ट में शेल प्रोग्रामिंग की एक बड़ी विविधता को कई पहलुओं पर कवर करने की कोशिश की है।
लिनक्स शेल और बेसिक शेल स्क्रिप्टिंग समझें - भाग I
मैं स्क्रिप्टिंग भाषा पर लिखने में थोड़ा हिचकिचा रहा था, क्योंकि मुझे यकीन नहीं था कि यूज़र्स इसे स्वीकार करेंगे या नहीं, लेकिन प्राप्त प्रतिक्रिया अपने आप में एक इतिहास है। हमने आपको स्क्रिप्टिंग भाषा का बुनियादी ज्ञान प्रदान करने की कोशिश की और इसका उपयोग कैसे करें, बेसिक कमांड लिखना, कमेंट लाइन्स की आवश्यकता और उन्हें कैसे लिखें, शेबैंग के बारे में बात करना, स्क्रिप्ट को एक्जीक्यूटेबल बनाना और उसका निष्पादन।
Hello.sh
पहली और परिचयात्मक स्क्रिप्ट का उद्देश्य एक सरल आउटपुट प्राप्त करना था, इस प्रकार आपको शेल स्क्रिप्टिंग की दुनिया के साथ सहज बनाना।
Process.sh
इस पोस्ट की दूसरी स्क्रिप्ट आपको बताने के लिए थी कि आप स्क्रिप्ट में एक से अधिक कमांड कैसे निष्पादित कर सकते हैं, हालांकि इस चरण में पाइप्ड नहीं।
Interactive.sh
इस पोस्ट की तीसरी और अंतिम स्क्रिप्ट एक सरल लेकिन बहुत इंटरैक्टिव स्क्रिप्ट थी जो आपका पहला नाम पूछती है, इसे स्टोर करती है, फिर आपका अंतिम नाम पूछती है, इसे स्टोर करती है और आपको आपके पूरे नाम और अंतिम नाम से अलग-अलग लाइनों में संबोधित करती है।
इस पोस्ट के अंत तक आपको पता होना चाहिए था कि शेल स्क्रिप्ट से लिनक्स कमांड को स्वतंत्र रूप से कैसे निष्पादित करें, आवश्यकतानुसार डेटा स्टोर और मैनिपुलेट करें, और रन-टाइम पर डेटा स्टोर करें।
शेल स्क्रिप्ट भाग I : लिनक्स शेल और बेसिक शेल स्क्रिप्टिंग भाषा समझें
पहले लेख पर प्राप्त प्रतिक्रिया पर गर्व महसूस करते हुए, श्रृंखला का अगला लेख लिखना पहला विचार था, जो मेरे दिमाग में आया और इसलिए श्रृंखला का दूसरा लेख था:
लिनक्स न्यूबीज के लिए स्क्रिप्टिंग सीखने के लिए 5 शेल स्क्रिप्ट्स - भाग II
कैप्शन से बहुत स्पष्ट, यहां 5-शेल स्क्रिप्ट्स सूचीबद्ध थीं। लेकिन यहां किस तरह की स्क्रिप्ट सूचीबद्ध करनी है, हमारे लिए एक कठिन काम था। हमने इस पोस्ट को शेल में डिज़ाइन और रंगों के लिए समर्पित करने का सोचा। इसके पीछे हमारी मुख्य सोच आपको यह बताना था कि लिनक्स टर्मिनल उबाऊ और रंगहीन नहीं है और आप अपना कार्य बहुत रंगीन तरीके से कर सकते हैं।
Special_patter.sh
इस पोस्ट की पहली स्क्रिप्ट एक विशेष पैटर्न बनाती है, डॉट्स(.) के साथ एक डायमंड पैटर्न कहें, यहां फॉर लूप का कार्यान्वयन वह था जो आपने इस विशिष्ट स्क्रिप्ट से सीखा।
Colourfull.sh
इस पोस्ट की दूसरी स्क्रिप्ट ने आपको कई रंगों का आउटपुट प्रदान किया। आपने कुछ कलर कोड सीखे (याद रखने की आवश्यकता नहीं) टेक्स्ट और बैकग्राउंड रंग को व्यक्तिगत रूप से बदलना और सीखने की प्रक्रिया बहुत रंगीन थी।
Encrypt.sh
इस पोस्ट का तीसरा लेख 10 लाइनों से कम की स्क्रिप्ट थी, लेकिन एक बहुत उपयोगी स्क्रिप्ट थी जो पासवर्ड के साथ फ़ाइल/फोल्डर को एन्क्रिप्ट करती है। सुरक्षा कार्यान्वयन कभी इतना आसान नहीं था। हमने यहां डिक्रिप्शन स्क्रिप्ट नहीं लिखी, लेकिन आपको फ़ाइल/फोल्डर को डिक्रिप्ट करने के लिए आवश्यक कमांड प्रदान की और आपको खुद डिक्रिप्शन स्क्रिप्ट लिखने के लिए कहा।
Server-Health.sh
इस पोस्ट की चौथी स्क्रिप्ट थोड़ी लंबी स्क्रिप्ट थी (सीखने के इस बिंदु पर लंबी) जो सर्वर से संबंधित जानकारी रिपोर्ट करती है और भविष्य के संदर्भ के लिए फ़ाइल में रीडायरेक्ट की जा सकती है। हमने वांछित परिणाम प्राप्त करने के लिए लिनक्स कमांड्स का पाइपलाइन्ड तरीके से उपयोग किया और इस प्रकार पाइपलाइन स्क्रिप्टिंग भाषा में एक महत्वपूर्ण टूल आपके ज्ञान में था।
Disk_space.sh
इस पोस्ट की पांचवीं और अंतिम स्क्रिप्ट वेब एडमिनिस्ट्रेटर के लिए विशेष रूप से बहुत उपयोगी थी, जहां यदि डिस्क स्पेस सीमा पार करता है तो यूज़र को स्वचालित ईमेल भेजा जाएगा। मान लीजिए एक यूज़र 5 GB वेब स्पेस के लिए रजिस्टर्ड है और जैसे ही उसकी वेब अपलोड सीमा 4.75 GB तक पहुंचती है, वेब स्पेस बढ़ाने के लिए यूज़र को स्वचालित ईमेल भेजा जाएगा।
शेल स्क्रिप्ट भाग II : शेल प्रोग्रामिंग सीखने के लिए 5 शेल स्क्रिप्ट्स
लिनक्स BASH स्क्रिप्टिंग की दुनिया में नौकायन - भाग III
स्क्रिप्टिंग भाषा में उपयोग किए जाने और आरक्षित कुछ कीवर्ड्स के बारे में बताने का समय आ गया था, ताकि हम अपनी स्क्रिप्ट्स को बहुत व्यावसायिक तरीके से परिष्कृत कर सकें। हमने यहां शेल स्क्रिप्ट में लिनक्स कमांड्स के कार्यान्वयन पर चर्चा की।
up.sh
इस पोस्ट की पहली स्क्रिप्ट का उद्देश्य आपको बताना था कि शेल स्क्रिप्ट में डायरेक्टरी में कैसे ऊपर जाएं। ठीक है, लिनक्स पैकेज इंस्टॉलेशन के दौरान आपने देखा होगा कि फ़ाइल स्वचालित रूप से कई स्थानों पर स्टोर हो जाती है और यदि आपको ऐसा कोई कार्य चाहिए तो यह स्क्रिप्ट काम आती है।
Randomfile.sh
इस पोस्ट की दूसरी स्क्रिप्ट बहुत उपयोगी स्क्रिप्ट है, और एडमिनिस्ट्रेटर्स के लिए उपयोगी। यह डेटा को ओवरराइट करने के किसी भी मौके को हटाने के लिए डेट और टाइम स्टैम्प के साथ स्वचालित रूप से यूनिक फ़ाइल/फोल्डर बना सकती है।
Collectnetworkinfo.sh
इस पोस्ट का तीसरा लेख सर्वर से संबंधित जानकारी एकत्र करता है और इसे टेक्स्ट फ़ाइल में स्टोर करता है, ताकि इसे भविष्य के संदर्भ के लिए भेजा/स्टोर किया जा सके।
Convertlowercase.sh
इस पोस्ट का चौथा लेख डेटा को फ़ाइल या स्टैंडर्ड इनपुट से एक बार में लोअरकेस में कन्वर्ट करता है।
Simplecacl.sh
इस पोस्ट का अंतिम लेख एक सरल कैलकुलेटर है जो इंटरैक्टिव रूप से चार बुनियादी गणितीय ऑपरेशन करने में सक्षम है।
शेल स्क्रिप्ट भाग III : लिनक्स BASH स्क्रिप्टिंग की दुनिया में नौकायन
लिनक्स शेल प्रोग्रामिंग का गणितीय पहलू - भाग IV
गणितीय थीम आधारित लेख एक ईमेल का परिणाम है जो मुझे मिला, जहां एक लिनक्स उत्साही तीसरे पोस्ट की अंतिम स्क्रिप्ट को नहीं समझ पाया, यूप! कैलकुलेटर स्क्रिप्ट। गणितीय ऑपरेशन को सरल बनाने के लिए, हमने व्यक्तिगत गणितीय ऑपरेशन के लिए स्वतंत्र स्क्रिप्ट बनाई।
Addition.sh
नाम से बहुत स्पष्ट यह स्क्रिप्ट दो संख्याओं का जोड़ करती है। हमने ऑपरेशन करने के लिए 'expr' का उपयोग किया है।
Subtraction.sh, Multiplication.sh, Division.sh क्रमशः पोस्ट की दूसरी, तीसरी और चौथी स्क्रिप्ट हैं जो उनके नाम के अनुसार गणितीय ऑपरेशन करती हैं।
Table.sh
इस पोस्ट की पांचवीं स्क्रिप्ट किसी संख्या की टेबल जनरेट करती है, जिसे रन-टाइम पर प्रदान किया जा सकता है।
EvenOdd.sh
पोस्ट की अगली स्क्रिप्ट जांचती है कि स्टैंडर्ड इनपुट से दी गई संख्या ऑड या इवन है और परिणाम स्टैंडर्ड आउटपुट पर प्रिंट करती है।
Factorial.sh
इस पोस्ट की सातवीं स्क्रिप्ट एक संख्या का फैक्टोरियल जनरेट करती है। कागज पर फैक्टोरियल की गणना करना एक दर्दनाक कार्य है, लेकिन यहां यह मजेदार है।
Armstrong.sh
स्क्रिप्ट जांचती है कि दी गई संख्या आर्मस्ट्रांग है या नहीं।
Prime.sh
इस पोस्ट की अंतिम स्क्रिप्ट जांचती है कि संख्या प्राइम है या नहीं और संबंधित आउटपुट जनरेट करती है।
शेल स्क्रिप्ट भाग IV : लिनक्स शेल प्रोग्रामिंग का गणितीय पहलू
स्क्रिप्टिंग में गणितीय अभिव्यक्तियों की गणना - भाग V
Fibonacci.sh
इस पोस्ट की पहली स्क्रिप्ट टेस्ट करती है कि दर्ज की जा रही संख्या फाइबोनैचि है या नहीं।
Decimal2Binary.sh
इस पोस्ट की दूसरी स्क्रिप्ट दशमलव संख्या को बाइनरी में कन्वर्ट करती है। यह सबसे आम प्रोजेक्ट में से एक है जो आपकी गर्मी की छुट्टी के असाइनमेंट में होता।
Binry2Decimal.sh
इस पोस्ट की तीसरी स्क्रिप्ट बाइनरी नंबर को वापस दशमलव में कन्वर्ट करती है, ठीक उपरोक्त प्रक्रिया के विपरीत।
हालांकि, हमने नीचे दिए गए गणितीय रूपांतरणों के लिए उचित स्क्रिप्ट नहीं लिखी लेकिन वन-लाइनर कमांड प्रदान की, ताकि आप इसे अपनी स्क्रिप्ट में स्वयं लागू कर सकें।
- दशमलव से ऑक्टल
- दशमलव से हेक्साडेसिमल
- ऑक्टल से दशमलव
- हेक्साडेसिमल से दशमलव
- बाइनरी से ऑक्टल, उपरोक्त श्रेणी में आता है।
शेल स्क्रिप्ट भाग V : शेल स्क्रिप्टिंग भाषा में गणितीय अभिव्यक्तियों की गणना
हमने सभी स्क्रिप्ट्स का स्वयं परीक्षण किया है ताकि यह सुनिश्चित हो सके कि आपको जो भी स्क्रिप्ट मिलती है वह आपके टर्मिनल में 100% पूरी तरह से चलती है। इसके अलावा, हमने अधिकांश स्क्रिप्ट्स में नमूना आउटपुट शामिल किया है, ताकि आप भ्रमित न हों।
खैर अभी के लिए मुझसे बस इतना ही। मैं फिर से एक दिलचस्प लेख के साथ यहां आऊंगा, जिसे आप लोग पढ़ना पसंद करेंगे। तब तक Tecmint से जुड़े रहें। फिट, स्वस्थ और ट्यून रहें। कमेंट में अपने बहुमूल्य विचार प्रदान करना न भूलें, जिसकी अत्यधिक सराहना की जाती है।