Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> Bash प्रोग्रामिंग

Bash स्थितिगत पैरामीटर्स में मास्टर करें: 2 व्यावहारिक शेल स्क्रिप्ट उदाहरण

एक पैरामीटर एक इकाई है जो मान संग्रहीत करता है। यह एक नाम, एक संख्या या कुछ विशेष वर्ण हो सकता है। एक वेरिएबल एक पैरामीटर है जिसे नाम से दर्शाया जाता है। कुछ वेरिएबल्स पहले से ही आपके लिए सेट हैं, और इनमें से अधिकांश को मान असाइन नहीं किए जा सकते।

ये वेरिएबल्स उपयोगी जानकारी रखते हैं, जिनका उपयोग शेल स्क्रिप्ट द्वारा यह जानने के लिए किया जा सकता है कि यह किस वातावरण में चल रहा है।

Bash दो प्रकार के पैरामीटर्स प्रदान करता है।

  • स्थितिगत पैरामीटर
  • विशेष पैरामीटर

इस लेख में, आइए उदाहरणों के साथ bash स्थितिगत पैरामीटर पर चर्चा करें।

यह लेख हमारी चल रही bash ट्यूटोरियल सीरीज़ का हिस्सा है।

उदाहरण 1: Bash स्थितिगत पैरामीटर - $0, $1, $2 ..

स्थितिगत पैरामीटर्स वे आर्ग्यूमेंट्स हैं जो आपके स्क्रिप्ट को दिए जाते हैं जब इसे आमंत्रित किया जाता है। यह $1 से $N तक हो सकता है। जब N में एक से अधिक अंक होते हैं, तो इसे ब्रेसेस में संलग्न किया जाना चाहिए जैसे ${N}।

वेरिएबल $0 प्रोग्राम का बेसनेम है जैसा कि इसे बुलाया गया था।

निम्नलिखित उदाहरण दो आर्ग्यूमेंट्स लेता है और उन दो पूर्णांकों के बीच अंकगणितीय संचालन परिणाम प्रदान करता है।

पहले, नीचे दिखाए अनुसार arithmetic.sh शेल स्क्रिप्ट बनाएं।

$ cat arithmetic.sh #!/bin/bash echo -e "\$1=$1" echo -e "\$2=$2" let add=$1+$2 let sub=$1-$2 let mul=$1*$2 let div=$1/$2 echo -e "Addition=$add\nSubtraction=$sub\nMultiplication=$mul\nDivision=$div\n" 

अगला, नीचे दिखाए अनुसार उचित पैरामीटर्स के साथ arithmetic.sh निष्पादित करें।

$ ./arithmetic.sh 12 10 $1=12 $2=10 Addition=22 Subtraction=2 Multiplication=120 Division=1 

उपरोक्त आउटपुट में $1 का मान 12 है, और $2 का मान 10 है।

शेल बिल्ट-इन 'let' शेल वेरिएबल्स पर अंकगणितीय संचालन करने की अनुमति देता है। उपरोक्त स्क्रिप्ट दिए गए पैरामीटर्स पर जोड़, घटाव, गुणा और भाग जैसे अंकगणितीय संचालन करती है।

उदाहरण 2: Bash स्थितिगत पैरामीटर्स सेट / अनसेट करें

बिल्ट-इन set कमांड का उपयोग स्थितिगत पैरामीटर को सेट और अनसेट करने के लिए किया जाता है।

पहले, नीचे दिखाए अनुसार positional.sh शेल स्क्रिप्ट बनाएं।

$ cat positional.sh #!/bin/bash # कमांड लाइन से echo -e "Basename=$0" echo -e "\$1=$1" echo -e "\$2=$2" echo -e "\$3=$3" # Set बिल्ट-इन से set First Second Third echo -e "\$1=$1" echo -e "\$2=$2" echo -e "\$3=$3" # स्थितिगत पैरामीटर्स को -(हाइफ़न) के साथ संग्रहीत करें set - -f -s -t echo -e "\$1=$1" echo -e "\$2=$2" echo -e "\$3=$3" # स्थितिगत पैरामीटर अनसेट करें set -- echo -e "\$1=$1" echo -e "\$2=$2" echo -e "\$3=$3" 

उपरोक्त स्क्रिप्ट पहले कमांड लाइन आर्ग्यूमेंट्स प्रिंट करती है, फिर set कमांड स्थितिगत पैरामीटर को स्पष्ट रूप से सेट करता है। -- के साथ Set विकल्पों के अंत को संदर्भित करता है, सभी निम्नलिखित आर्ग्यूमेंट्स स्थितिगत पैरामीटर हैं भले ही वे '-' से शुरू हो सकते हैं। बिना किसी अन्य आर्ग्यूमेंट्स के '--' के साथ Set सभी स्थितिगत पैरामीटर्स को अनसेट करता है।

अगला, नीचे दिखाए अनुसार positional.sh निष्पादित करें।

$ ./positional.sh Basename=t.sh $1=12 $2=10 $3= $1=First $2=Second $3=Third $1=-f $2=-s $3=-t $1= $2= $3= 

अगले लेख में, आइए उदाहरणों के साथ bash विशेष पैरामीटर्स पर चर्चा करें।

  1. rbash: रिस्ट्रिक्टेड Bash शेल में महारत - अवधारणाएं, उपयोग और व्यावहारिक उदाहरण rbash: रिस्ट्रिक्टेड Bash शेल में महारत - अवधारणाएं, उपयोग और व्यावहारिक उदाहरण

    लिनक्स शेल सबसे आकर्षक और शक्तिशाली GNU/लिनक्स संचालित टूल में से एक है। X सहित सभी एप्लिकेशन, शेल पर बने हैं और लिनक्स शेल इतना शक्तिशाली है कि इसका उपयोग करके पूरे लिनक्स सिस्टम को सटीक रूप से नियंत्रित किया जा सकता है। लिनक्स शेल का दूसरा पहलू यह है कि यह संभावित रूप से हानिकारक हो सकता है, जब आप

  1. शेल ट्रेसिंग में मास्टरी: कमांड निष्पादन डीबगिंग के लिए चरण-दर-चरण शेल ट्रेसिंग में मास्टरी: कमांड निष्पादन डीबगिंग के लिए चरण-दर-चरण

    शेल स्क्रिप्ट डीबगिंग श्रृंखला के इस लेख में, हम तीसरे शेल स्क्रिप्ट डीबगिंग मोड, यानी शेल ट्रेसिंग की व्याख्या करेंगे और यह दिखाने के लिए कुछ उदाहरण देखेंगे कि यह कैसे काम करता है, और इसका उपयोग कैसे किया जा सकता है। इस श्रृंखला का पिछला भाग दो अन्य शेल स्क्रिप्ट डीबगिंग मोड्स पर स्पष्ट रूप से प्रक

  1. Bash शेल फ़ंक्शन्स में मास्टर करें: 6 व्यावहारिक उदाहरण और टिप्स Bash शेल फ़ंक्शन्स में मास्टर करें: 6 व्यावहारिक उदाहरण और टिप्स

    Bash शेल फ़ंक्शन्स कई UNIX / Linux कमांड्स को बाद में निष्पादन के लिए एक ही नाम का उपयोग करके समूहबद्ध करने का एक तरीका है। Bash शेल फ़ंक्शन को नियमित Unix कमांड की तरह निष्पादित किया जा सकता है। शेल फ़ंक्शन्स को किसी नई प्रक्रिया को बनाए बिना वर्तमान शेल संदर्भ में निष्पादित किया जाता है। Bash alia