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

बैश If-Else सिंटैक्स: लिनक्स शेल निर्णयों में महारत हासिल करें

बैश If-Else सिंटैक्स: लिनक्स शेल निर्णयों में महारत हासिल करें

कोडिंग करते समय, आपको कुछ शर्तों के आधार पर निर्णय लेने की आवश्यकता हो सकती है। शर्तें वे अभिव्यक्तियाँ हैं जो बूलियन अभिव्यक्ति (true या false) का मूल्यांकन करती हैं।

कथन जो कुछ शर्तों के आधार पर विभिन्न कोड शाखाओं को निष्पादित करने में मदद करते हैं, उन्हें शर्ती कथन कहा जाता है।

if...else सबसे अधिक उपयोग किए जाने वाले शर्ती कथनों में से एक है। अन्य प्रोग्रामिंग भाषाओं की तरह, बैश स्क्रिप्टिंग भी if...else स्टेटमेंट का समर्थन करती है। और हम इस ब्लॉग पोस्ट में इसका विस्तार से अध्ययन करेंगे।

if स्टेटमेंट का सिंटैक्स

आप if स्टेटमेंट का विभिन्न तरीकों से उपयोग कर सकते हैं। if स्टेटमेंट की सामान्य संरचना इस प्रकार है:

  • केवल if स्टेटमेंट का उपयोग: if...then...fi
  • if के साथ else स्टेटमेंट का उपयोग: if...then...else...fi स्टेटमेंट
  • if के साथ एकाधिक else स्टेटमेंट का उपयोग: if..elif..else..fi

##

if स्टेटमेंट का उपयोग कैसे करें

जब आप सिंगल if स्टेटमेंट का उपयोग कर रहे हैं, तो सिंटैक्स इस प्रकार है:

if [ condition ] then statement fi 

ध्यान दें कि स्पेस सिंटैक्स का हिस्सा हैं और इन्हें हटाया नहीं जाना चाहिए।

आइए एक उदाहरण देखें जहां हम दो नंबरों की तुलना करके यह पता लगा रहे हैं कि पहला नंबर छोटा है या नहीं।

#! /bin/sh a=5 b=30 if [ $a -lt $b ] then echo "a is less than b" fi 

यदि आप उपरोक्त स्निपेट चलाते हैं, तो शर्त if [ $a -lt $b ] True का मूल्यांकन करती है, और if स्टेटमेंट के अंदर का स्टेटमेंट निष्पादित होता है

आउटपुट:

a is less than b 

if .. else स्टेटमेंट का उपयोग कैसे करें

जब आप if स्टेटमेंट का उपयोग कर रहे हैं और दूसरी शर्त जोड़ना चाहते हैं, तो सिंटैक्स इस प्रकार है:

if [ condition ] then statement else do this by default fi 

आइए एक उदाहरण देखें जहां हम पता लगाना चाहते हैं कि पहला नंबर दूसरे से बड़ा है या छोटा। यहां, if [ $a -lt $b ] का मूल्यांकन false होता है, जिससे कोड का else भाग चलता है।

#! /bin/sh a=99 b=45 if [ $a -lt $b ] then echo "a is less than b" else echo "a is greater than b" fi 

आउटपुट:

a is greater than b 

if..elif..else स्टेटमेंट का उपयोग कैसे करें

मान लीजिए आप कोड को डायनामिक बनाने के लिए आगे की शर्तों और तुलनाओं को जोड़ना चाहते हैं। इस मामले में, सिंटैक्स ऐसा दिखेगा:

if [ condition ] then statement elif [ condition ] then statement else do this by default fi 

सार्थक तुलना बनाने के लिए, हम AND -a और OR -o का भी उपयोग कर सकते हैं।

इस उदाहरण में, हम इन शर्तों का उपयोग करके त्रिकोण के प्रकार का निर्धारण करेंगे:

  • Scalene: एक त्रिकोण जहां हर तरफ की लंबाई अलग होती है।
  • Isosceles: एक त्रिकोण जहां 2 तरफ बराबर होती हैं।
  • Equilateral: एक त्रिकोण जहां सभी तरफ बराबर होती हैं।
read a read b read c if [ $a == $b -a $b == $c -a $a == $c ] then echo EQUILATERAL elif [ $a == $b -o $b == $c -o $a == $c ] then echo ISOSCELES else echo SCALENE fi 

ऊपर दिए गए उदाहरण में, स्क्रिप्ट उपयोगकर्ता से त्रिकोण की तीनों भुजाएं दर्ज करने के लिए कहेगी। अगला, यह भुजाओं की तुलना करेगा और त्रिकोण का प्रकार तय करेगा।

3 4 5 SCALENE 

निष्कर्ष

आप if..else जैसी शर्तों के आधार पर अपने कोड को आसानी से ब्रांच कर सकते हैं और कोड को अधिक डायनामिक बना सकते हैं। इस ट्यूटोरियल में, आपने if...else के सिंटैक्स को कुछ उदाहरणों के साथ सीखा।

मुझे आशा है कि आपको यह ट्यूटोरियल मददगार लगा।

इस ट्यूटोरियल से आपकी पसंदीदा चीज़ क्या थी? मुझे ट्विटर पर बताएं!

आप मेरे अन्य पोस्ट यहां पढ़ सकते हैं।

मुफ्त में कोड करना सीखें। freeCodeCamp के ओपन सोर्स पाठ्यक्रम ने 40,000 से अधिक लोगों को डेवलपर के रूप में नौकरी पाने में मदद की है। शुरू करें


  1. एंड्रॉइड पर बैकग्राउंड को 25% पारदर्शी कैसे बनाएं? एंड्रॉइड पर बैकग्राउंड को 25% पारदर्शी कैसे बनाएं?

    व्यू अल्फा से पारदर्शिता सेट करना यह उदाहरण दिखाता है कि android:alpha=0.25 एट्रिब्यूट का उपयोग करके किसी व्यू (या पूरे लेआउट) के बैकग्राउंड को 25% पारदर्शी (75% ओपेक) कैसे बनाएं। चरण 1: नया प्रोजेक्ट बनाएं Android Studio में File → New Project चुनें। चरण 2: लेआउट XML (res/layout/activity_main.xml

  1. एंड्रॉइड में WebView ऐप कैश कैसे इनेबल करें? एंड्रॉइड में WebView ऐप कैश कैसे इनेबल करें?

    एंड्रॉइड WebView में एप्लिकेशन कैश (AppCache) इनेबल करना यह उदाहरण दर्शाता है कि setAppCacheEnabled(true) का उपयोग करके WebView में HTML5 एप्लिकेशन कैश कैसे इनेबल करें। ⚠️ महत्वपूर्ण नोट Application Cache (AppCache) डिप्रिकेटेड है और आधुनिक ब्राउज़र्स से हटा दिया गया है। Service Workers + Cache API

  1. HTML DOM previousSibling प्रॉपर्टी HTML DOM previousSibling प्रॉपर्टी

    previousSibling प्रॉपर्टी क्या है? DOM previousSibling प्रॉपर्टी किसी नोड के समान पैरेंट में उसी ट्री लेवल पर पिछले नोड (किसी भी प्रकार का: तत्व, टेक्स्ट, कमेंट) को लौटाती है। यह previousElementSibling के विपरीत सभी नोड प्रकारों को ध्यान में रखती है। सिंटैक्स node.previousSibling रिटर्न मान पिछला