सुरुवातीच्या मार्गदर्शकाला बाश - भाग 1 - हॅलो वर्ल्ड

इंटरनेट वर बरेच मार्गदर्शक आहेत जे बघताहेत शेल स्क्रिप्ट्स BASH वापरून कशी बनवावीत आणि या मार्गदर्शकाने थोडासा वेगळा फिरकी मारा करणे हे लक्ष्य आहे कारण हे कुणीतरी लिहिलेले आहे ज्यांच्याकडे अतिशय कमी शेल स्क्रिप्टिंग अनुभव आहे.

आता आपण असे समजू शकता की ही एक मूर्ख कल्पना आहे परंतु मला असे वाटते की काही मार्गदर्शक आपल्याला आधीपासूनच तज्ञ असल्याचे आणि अन्य मार्गदर्शक पाठपुरावा करण्यासाठी कट रचतात.

माझे लिनक्स / युनिक्स शेल स्क्रिप्टिंग अनुभव मर्यादित असताना, मी व्यापाराने एक सॉफ्टवेअर डेव्हलपर आहे आणि मी पर्ल, पीएपी आणि व्हीबीस्क्रिप्ट सारख्या भाषा स्क्रिप्टिंग करत आहे.

या मार्गदर्शकांचा मुद्दा असा आहे की मी शिकत आहे आणि मी उचललेली कुठलीही माहिती आपल्याला कळवेल.

प्रारंभ करणे

जाहीरपणे असे बरेच सिद्धांत आहेत की मी तुम्हास लगेच पाठवू शकेन, जसे की विविध प्रकारचे शेल आणि केएसएच आणि सीएसएच वर बाश वापरण्याचे फायदे.

बहुतेक लोक जेव्हा काहीतरी नवीन शिकत असतात तेव्हा त्यात उडी मारणे आणि काही व्यावहारिक धडे सह प्रारंभ करणे आणि लक्षात ठेवून मी सध्या तुच्छतेने वागणार नाही जे सध्या महत्वाचे नाही.

हे मार्गदर्शक अनुसरण करण्यासाठी आपल्याला फक्त मजकूर संपादक आणि टर्मिनल चालू असलेला BASH (बहुतेक Linux वितरांवरील डीफॉल्ट शेल) आवश्यक आहे.

मजकूर संपादक

मी वाचलेले इतर मार्गदर्शक सुचविले आहेत की आपल्याला टेक्स्ट एडिटरची गरज आहे ज्यातून आज्ञावलीचा रंग कोडिंग आणि शिफारस केलेले संपादक एकतर व्हीआयएम किंवा ईएमएसीएस आहेत .

रंग कोडिंग छान आहे कारण ते आपण टाइप करता त्याप्रमाणेच कमांड हायलाइट करते परंतु संपूर्ण नवशिक्यासाठी आपण कोडची एकच ओळ लिहित न करता VIM आणि EMACS शिकत असलेल्या पहिल्या काही आठवड्यांमध्ये खर्च करु शकता.

दोन पैकी मी ईएमएसीएस पसंत करतो परंतु प्रामाणिक असणे हे मी एक सामान्य संपादक जसे नॅनो , जीएडिट किंवा लीफपॅड वापरणे पसंत करतो.

आपण आपल्या स्वत: च्या संगणकावर स्क्रिप्ट लिहित असाल आणि आपण नेहमी आपल्यास ग्राफिकल पर्यावरणात प्रवेश असेल तर आपण आपल्यासाठी उत्कृष्ट कार्य करणारे संपादक निवडू शकता आणि हे जीईडीट किंवा एडिटर असे असू शकते जे थेट टर्मिनलवर चालते जसे नॅनो किंवा विम

या मार्गदर्शकाच्या उद्देशासाठी मी नॅनोचा वापर करणार आहे कारण बहुतेक Linux वितरणांवर हे स्थापित केले आहे आणि म्हणूनच आपल्याकडे त्यावर प्रवेश असेल अशी शक्यता आहे.

टर्मिनल विंडो उघडत आहे

जर आपण Linux वितरण किंवा लिनक्स मिंट किंवा उबुंटूसह Linux वितरण वापरत असाल तर आपण CTRL + ALT + T दाबून टर्मिनल विंडो उघडू शकता.

आपली लिपी कुठे ठेवावी

या ट्युटोरियलच्या उद्देशासाठी आपण आपल्या स्क्रिप्ट आपल्या होम फोल्डरखाली फोल्डरमध्ये ठेवू शकता.

टर्मिनल विंडोमध्ये खात्री करा की आपण खालील आदेश टाइप करून आपल्या होम फोल्डरमध्ये आहात:

सीडी ~

Cd आदेश बदल निर्देशिकेसाठी आहे आणि टिल्ड (~) तुमच्या होम फोल्डरसाठी शॉर्टकट आहे.

आपण खालील आदेश टाइप करून आपण योग्य ठिकाणी असल्याचे तपासू शकता:

पीडब्ल्यूडी

Pwd आदेश आपल्याला आपल्या सध्याच्या चालू असलेल्या डिरेक्ट्रीला सांगेल (जिथे आपण निर्देशिका ट्रीमध्ये आहात). माझ्या बाबतीत तो / होम / गॅरी परत आला.

आता आपण आपले स्क्रिप्ट्स थेट होम फोल्डरमध्ये ठेवू नयेत म्हणून स्क्रिप्ट्स नावाची फोल्डर तयार करा म्हणजे खालील कमांड टाईप करा.

एमकेडीआईर स्क्रिप्ट

नवीन स्क्रिप्ट फोल्डरमध्ये खालील आज्ञा टाइप करुन बदला:

सीडी स्क्रिप्ट

आपला प्रथम स्क्रिप्ट

हा प्रोग्राम नेहमीच "हॅलो वर्ल्ड" हा शब्द वापरला जातो.

आपल्या स्क्रिप्ट फोल्डर मधून निम्नलिखित आज्ञा प्रविष्ट करा:

नॅनो हॅलोरोल्ड.श

आता खालील कोड नॅनो विंडोमध्ये प्रविष्ट करा.

#! / बिन / बाश इको "हॅलो वर्ल्ड"

फाईल सेव्ह करण्यासाठी CTRL + O आणि नॅनो बाहेर जाण्यासाठी CTRL + X दाबा.

खालील प्रमाणे स्क्रिप्ट तयार होते:

आपण लिहू शकता अशा सर्व स्क्रिप्टच्या शीर्षस्थानी #! / Bin / bash समाविष्ट करणे आवश्यक आहे कारण हे इंटरप्रीटरला देते आणि ऑपरेटिंग सिस्टमला फाईल कशी हाताळायची हे माहित असते. मुळात हे केवळ लक्षात ठेवा आणि आपण हे केल्याबद्दल विसरून जा.

दुस-या ओळीमध्ये एक कमांड आहे जी echo नावाची आहे जी लगेच पाठोपाठ त्याचा पाठपुरावा करते.

लक्षात ठेवा आपण एकापेक्षा अधिक शब्द प्रदर्शित करू इच्छित असल्यास आपल्याला शब्दांभोवती दुहेरी अवतरण (")" वापरणे आवश्यक आहे.

आपण आता खालील आज्ञा टाइप करून स्क्रिप्ट चालवू शकता:

sh helloworld.sh

"हॅलो वर्ल्ड" हे शब्द दिसणे आवश्यक आहे.

स्क्रिप्ट चालविण्याचा दुसरा एक मार्ग खालीलप्रमाणे आहे:

./helloworld.sh

शक्यता असा आहे की जर आपण आपल्या टर्मिनलमध्ये ती आज्ञा थेट चालू केली तर आपल्याला परवानगी त्रुटी मिळेल.

स्क्रिप्ट चालवण्यासाठी परवानगी देऊन खालील टाइप करा:

sudo chmod + x helloworld.sh

मग तिथे काय झाले? परवानगी न बदलता sh helloworld.sh चालविण्यास आपण सक्षम आहात परंतु चालू. / Helloorld.sh ने एक समस्या का निर्माण केली?

पहिली पद्धत bash इंटरप्रिटर लोड करते ज्यास helloworld.sh ला इनपुट म्हणून घेते आणि त्याच्याशी काय करावे हे कार्य करते. Bash इंटरप्रीटरकडे आधीपासून चालविण्याची परवानगी आहे आणि फक्त स्क्रिप्टमधील कमांडस चालवण्याची आवश्यकता आहे.

दुसरी पद्धत ऑपरेटिंग सिस्टीम स्क्रिप्टसह काय करावे याचे काम करते आणि त्यामुळे कार्यान्वित करण्यासाठी एक्झिक्यूटेबल बिट आवश्यक आहे.

वरील स्क्रिप्ट ठीक होते परंतु आपण कोटेशन चिन्हे दाखवायची असल्यास काय घडते?

हे साध्य करण्याचे विविध मार्ग आहेत. उदाहरणार्थ आपण खालीलप्रमाणे अवतरण चिन्हांपूर्वी एक बॅकस्लॅश ठेवू शकता:

प्रतिध्वनी \ "हॅलो जगा \"

हे "हॅलो वर्ल्ड" चे उत्पादन करेल

तरी एक मिनिट वाट पहा, जर तुम्हाला \ "हॅलो वर्ल्ड \" प्रदर्शित करायचा असेल तर?

पण आपण सुटलेला वर्ण तसेच पळून जाऊ शकता

प्रतिध्वनी \\ "\" हॅलो वर्ल्ड \\ "\"

हे आउटपुट "हॅलो वर्ल्ड" चे उत्पादन करेल.

आता मला माहित आहे की आपण काय विचार करीत आहात. पण मला खरोखर \ "\" हॅलो वर्ल्ड \ "\" दाखवायचा आहे

या सर्व एस्केप वर्णांसह प्रतिध्वनी वापरणे अतिशय मूर्ख होऊ शकते. एक पर्यायी कमांड आहे ज्याचा वापर आपण printf नावाचे करू शकता.

उदाहरणार्थ:

printf '% s \ n' '\\ "\" हॅलो वर्ल्ड \\ "\"'

लक्षात घ्या की आपण प्रदर्शित केलेले टेक्स्ट सिंगल कोट्स दरम्यान आहे. Printf कमांड आपल्या स्क्रिप्टमधून टेक्स्ट दर्शवितो. % S याचा अर्थ असा आहे की तो एक स्ट्रिंग प्रदर्शित करेल, \ n एक नवीन ओळ आउटपुट करेल.

सारांश

आम्ही खरोखरच एखाद्या भागामध्ये जास्त जमिनीचा समावेश केलेला नाही परंतु आशा आहे की आपल्या पहिल्या स्क्रिप्टचे काम आपण केले असेल.

पुढील भागात आम्ही वेगवेगळ्या रंगांमध्ये मजकूर प्रदर्शित करण्यासाठी हॅलो वर्ल्ड स्क्रिप्टवर सुधारणे, इनपुट पॅरामीटर्स, व्हेरिएबल्स स्वीकारणे आणि आपल्या कोडवर टिप्पणी देणे आणि हाताळणे हे पाहणार आहोत.