किसी भी प्रोग्रामिंग भाषा में एक ही कोड को बार-बार निष्पादित करने के लिए लूप्स का उपयोग किया जाता है। प्रोग्रामिंग में दोहराए जाने वाले कार्यों को करने के लिए मुख्य रूप से तीन प्रकार के लूप का उपयोग किया जाता है। य़े हैं के लिए, जबकि और करते समय/दोहराएँ-जब तक कुंडली। आप विभिन्न तरीकों से बैश स्क्रिप्ट पर लूप के लिए आवेदन कर सकते हैं। इस आलेख में लूप उदाहरणों के लिए कुछ उपयोगी बाश का उल्लेख किया गया है।
लूप के लिए सिंटैक्स:
चर_नाम के लिए सूचियों मेंकरना
आदेशों
किया हुआ
का आरंभ और समाप्ति खंड के लिये लूप द्वारा परिभाषित किया गया है करना तथा किया हुआ बैश स्क्रिप्ट में कीवर्ड। कितनी बार पाश के लिए पुनरावृति घोषित पर निर्भर करेगा सूचियों चर। लूप से एक आइटम ले जाएगा सूचियों और मूल्य को एक चर पर संग्रहीत करें जिसका उपयोग लूप के भीतर किया जा सकता है। लूप के उदाहरण के लिए विभिन्न प्रकार के बैश का उपयोग नीचे समझाया गया है। निम्नलिखित कोड उदाहरणों का परीक्षण करने के लिए एक टेक्स्ट एडिटर खोलें।
उदाहरण -1: स्थिर मान पढ़ना
नाम की एक बैश फ़ाइल बनाएँ लूप1.sh जिसमें निम्न स्क्रिप्ट है।
के लियेनीला हरा गुलाबी सफेद लाल रंग में रंग
करना
फेंक दिया'रंग = $ रंग'
किया हुआ
इस उदाहरण में, सूची भाग में 5 स्थिर मान घोषित किए गए हैं। यह लूप 5 बार पुनरावृति करेगा और हर बार यह सूचियों से एक मान प्राप्त करेगा और इसे नामित चर में संग्रहीत करेगा रंग जो लूप के अंदर प्रिंट होगा। यदि आप दौड़ते हैं तो निम्न आउटपुट दिखाई देगा लूप1.sh .
उदाहरण -2: सरणी चर पढ़ना
आप किसी सरणी के मानों को पुनरावृत्त करने के लिए लूप के लिए उपयोग कर सकते हैं। नाम की एक नई बैश फ़ाइल बनाएँ loop2.sh निम्नलिखित कोड के साथ।
रंगसूची=('नीला हरा गुलाबी सफेद लाल')के लिये$ColorList . में रंग
करना
अगर [$ रंग== 'गुलाबी' ]
फिर
फेंक दिया'मेरा पसंदीदा रंग $color है'
होना
किया हुआ
इस उदाहरण में, लूप नाम के एक सरणी चर से मान प्राप्त करता है रंगसूची और यह आउटपुट को तभी प्रिंट करेगा जब गुलाबी मान सरणी तत्वों में पाया जाता है।
उदाहरण -3: कमांड-लाइन तर्क पढ़ना
कमांड-लाइन तर्क मानों को बैश में लूप के लिए उपयोग करके पुनरावृत्त किया जा सकता है। नाम की एक नई बैश फ़ाइल बनाएँ लूप3.शो निम्नलिखित कोड के साथ।
के लिये$ . में myval*करना
फेंक दिया'तर्क: $myval'
किया हुआ
स्क्रिप्ट चलाने के बाद निम्न आउटपुट दिखाई देगा। इस उदाहरण में कमांड-लाइन तर्क के रूप में तीन तर्क दिए गए हैं। य़े हैं ' मैं' , 'पसंद ' तथा ' प्रोग्रामिंग'
उदाहरण-4: तीन व्यंजकों का प्रयोग करके विषम और सम संख्या ज्ञात करना
लूप के लिए सबसे आम सिंटैक्स थ्री एक्सप्रेशन सिंटैक्स है। पहली अभिव्यक्ति आरंभीकरण को इंगित करती है, दूसरी अभिव्यक्ति समाप्ति की स्थिति को इंगित करती है और तीसरी अभिव्यक्ति वृद्धि या कमी को इंगित करती है। नाम की एक नई फ़ाइल बनाएँ लूप4.शो स्क्रिप्ट की जांच करने के लिए।
के लिये ((एन=1;एन<=5;एन++ ))करना
अगर (($n%2==0 ))
फिर
फेंक दिया'$n सम है'
अन्यथा
फेंक दिया'$n विषम है'
होना
किया हुआ
लूप 1 से 5 के मान से 5 बार पुनरावृति करेगा और यह सम और विषम संख्याओं की जांच करेगा और प्रिंट करेगा। स्क्रिप्ट निष्पादित करने के बाद आपको निम्न आउटपुट मिलेगा।
उदाहरण -5: फ़ाइल सामग्री पढ़ना
आप लूप के लिए किसी भी फाइल की सामग्री को पढ़ने के लिए उपयोग कर सकते हैं 'बिल्ली' आदेश। मान लीजिए, आपके पास 'नाम की एक फाइल है' कार्यदिवस.txt ' जिसमें सभी सप्ताह के दिनों के नाम शामिल हैं। अब, नाम की एक बैश फाइल बनाएं लूप5.sh फ़ाइल की सामग्री को पढ़ने के लिए।
मैं=1के लिये`बिल्ली कार्यदिवस में var।टेक्स्ट``
करना
फेंक दिया'सप्ताहांत $ i: $ var'
((मैं++))
किया हुआ
स्क्रिप्ट चलाने के बाद निम्न आउटपुट दिखाई देगा।
लूप के लिए, बैश में, आप विभिन्न स्रोतों और विभिन्न तरीकों से डेटा को पार कर सकते हैं और टर्मिनल पर या अपनी स्क्रिप्ट में अधिक उत्पादक बन सकते हैं। नीचे देखें संबंधित वीडियो: