कैसे चलाएं। In linux

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

शेल स्क्रिप्ट को निष्पादन योग्य बनाना

शेल स्क्रिप्ट को निष्पादन योग्य के रूप में चिह्नित किया जाना चाहिए इससे पहले कि आप उन्हें चला सकें। आप ls -l कमांड के साथ एक लंबी डायरेक्टरी लिस्टिंग को देखकर किसी फाइल की परमिशन की जांच कर सकते हैं, जिसे इसका फाइल मोड भी कहा जाता है। यदि आप फ़ाइल नाम प्रदान करते हैं, तो आप उस फ़ाइल के लिए जानकारी प्राप्त करेंगे। उदाहरण के लिए, यहाँ हमारे पास कोई फाइल है जिसे somefile कहा जाता है, और हम कमांड ls -l somefile के साथ अनुमति देखते हैं:

दस अक्षर " -rw-r - r-- " कुछ फाइल के फ़ाइल मोड का प्रतिनिधित्व करते हैं। फ़ाइल अनुमतियां के बारे में अधिक जानकारी के लिए, अनुमतियाँ क्या हैं और वे कैसे काम करती हैं?

यहां, फ़ाइल मोड इंगित करता है कि हम कुछ फ़ाइल पढ़ और लिख सकते हैं, लेकिन इसे निष्पादित नहीं कर सकते। हम chmod कमांड का उपयोग करके निष्पादन की अनुमति सेट कर सकते हैं, जो फ़ाइल मोड को बदलता है:

कमांड chmod u + x somefile फ़ाइल के स्वामी के लिए निष्पादित अनुमति बिट सेट करता है। आप देख सकते हैं कि अनुमति लाइन में अब चौथे स्थान पर एक x है, जो फ़ाइल पर स्वामी की निष्पादन अनुमतियों का प्रतिनिधित्व करता है। इसके अलावा, ध्यान दें कि फ़ाइल का नाम रंग में सूचीबद्ध है (यहां, यह हरे रंग में दिखाया गया है)। आपके सिस्टम पर रंग भिन्न हो सकता है, लेकिन जब आप ls कमांड चलाते हैं, तो एक अलग रंग का उपयोग करके निष्पादन योग्य फ़ाइलों को इंगित करने के लिए कई लिनक्स वितरण कॉन्फ़िगर किए जाते हैं।

आप किसी भी .sh स्क्रिप्ट फ़ाइल के लिए इसी प्रक्रिया का पालन कर सकते हैं जिसे आपको निष्पादित करने की आवश्यकता हो सकती है। उदाहरण के लिए, यदि आप एक कस्टम स्क्रिप्ट लिखते हैं और इसे myscript.sh नाम देते हैं, तो आपको इसे चलाने का प्रयास करने से पहले chmod u + x myscript.sh चलाना चाहिए।

कमांड लाइन से एक स्क्रिप्ट को निष्पादित करना

शेल स्क्रिप्ट निष्पादित करने के लिए, आपको कमांड प्रॉम्प्ट पर स्क्रिप्ट का पथनाम निर्दिष्ट करना होगा। उदाहरण के लिए, यदि स्क्रिप्ट का नाम install.sh है और यह आपके वर्किंग डायरेक्टरी में स्थित है, तो आप इसे नीचे दिए कमांड से चला सकते हैं।

 ./install.sh 

उपरोक्त कमांड शेल को बताता है, "फ़ाइल इंस्टॉल को निष्पादित करें। यह वर्तमान निर्देशिका में स्थित है।" यदि install.sh आपके होम डायरेक्टरी में डायरेक्टरी मायस्क्रिप्ट में स्थित है, तो आप इसे नीचे दिए गए कमांड से चला सकते हैं।

 ~ / Myscripts / install.sh 

नोट: एक सुरक्षा उपाय के रूप में स्क्रिप्ट फ़ाइल में पथनाम निर्दिष्ट करें (केवल इंशाल्लाह में टाइप करने के बजाय) उदाहरण के लिए: शेल यह सुनिश्चित करना चाहता है कि वह सही install.sh चला रहा है, इसलिए आपको इसकी सटीक निर्दिष्ट करने की आवश्यकता है स्थान।

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