इस ट्यूटोरियल में, हम सीखते हैं कि एक साधारण बैश स्क्रिप्ट कैसे बनाएं और चलाएं जो "Hello World" प्रिंट करती है।
शेबैंग (#!) क्या है
हर शेल स्क्रिप्ट शेबैंग #! सिंबल से शुरू होती है। यह स्क्रिप्ट की पहली लाइन पर घोषित किया जाता है और मूल रूप से शेल को बताता है कि स्क्रिप्ट चलाने के लिए किस इंटरप्रेटर का उपयोग किया जाएगा।
#!/bin/bash ... हेलो वर्ल्ड बैश स्क्रिप्ट
अब, हम एक बैश स्क्रिप्ट बनाने जा रहे हैं जो टर्मिनल में "Hello World" शब्द प्रिंट करती है।
पहले hello_world.sh नामक एक फाइल बनाएं। टर्मिनल का उपयोग करके हम लिखते हैं:
$ touch hello_world.sh हमारी फाइल अब बन गई है।
अगला, फाइल को अपने पसंदीदा एडिटर में खोलें; मैं नैनो का उपयोग कर रहा हूं, तो यह होगा:
$ nano hello_world.sh एक बार hello_world.sh आपके एडिटर में खुल जाए, तो निम्न कमांड टाइप करें:
#!/bin/bash echo "Hello World" शेल स्क्रिप्ट निष्पादित करें
अब hello world प्रिंट करने के लिए, हमें हमारे द्वारा बनाई गई शेल स्क्रिप्ट को निष्पादित करने की आवश्यकता है।
शेल स्क्रिप्ट को निष्पादित करने के कई तरीके हैं
$ sh ./hello_world.sh ## गलत $ ./hello_world.sh ## सही $ bash ./hello_world.sh ## सही पहला तरीका गलत है, क्योंकि आप शेल को शेल इंटरप्रेटर का उपयोग करने के लिए कह रहे हैं न कि बैश इंटरप्रेटर का।
दूसरा तरीका सही है क्योंकि हम केवल स्क्रिप्ट चलाते हैं जो फाइल में परिभाषित इंटरप्रेटर का उपयोग करेगी, स्क्रिप्ट की पहली लाइन जो #!/bin/bash है।
तीसरा तरीका भी सही है क्योंकि इस मामले में, हम बैश इंटरप्रेटर का उपयोग करने के लिए कह रहे हैं जो फाइल में परिभाषित के समान है।
शेल स्क्रिप्ट निष्पादित करते समय परमिशन डिनाइड
यदि आप अपनी स्क्रिप्ट को चलाने का प्रयास करते हैं:
$ ./hello_world.sh -bash: ./hello_world.sh: Permission denied तो आपको परमिशन डिनाइड एरर दिखाई देगा। ऐसा इसलिए है क्योंकि स्क्रिप्ट में एक्जीक्यूट परमिशन नहीं है।
आप निम्न का उपयोग करके स्क्रिप्ट को एक्जीक्यूट परमिशन दे सकते हैं:
$ chmod +x ./hello_world.sh अब, यदि आप स्क्रिप्ट को फिर से चलाते हैं, तो आप "Hello World" प्रिंट हुआ देखेंगे:
$ ./hello_world.sh Hello World