Bash स्क्रिप्ट आपको कमांड लाइन कार्यों को स्वचालित करने का एक सुविधाजनक तरीका देती हैं।
Bash के साथ, आप वही कई चीजें कर सकते हैं जो आप अन्य स्क्रिप्टिंग या प्रोग्रामिंग भाषाओं में करते हैं। आप वेरिएबल बना सकते हैं और उपयोग कर सकते हैं, लूप निष्पादित कर सकते हैं, सशर्त तर्क का उपयोग कर सकते हैं, और डेटा को ऐरे में संग्रहीत कर सकते हैं।
जबकि कार्यक्षमता बहुत परिचित हो सकती है, Bash का सिंटैक्स मुश्किल हो सकता है। इस लेख में, आप सीखेंगे कि ऐरे कैसे घोषित करें और फिर उन्हें अपने कोड में कैसे उपयोग करें।
Bash में ऐरे कैसे घोषित करें
Bash में ऐरे घोषित करना आसान है, लेकिन सिंटैक्स पर ध्यान दें। यदि आप अन्य भाषाओं में प्रोग्रामिंग करने के आदी हैं, तो कोड परिचित लग सकता है, लेकिन सूक्ष्म अंतर हैं जिन्हें याद करना आसान है।
अपना ऐरे घोषित करने के लिए, इन चरणों का पालन करें:
- अपने ऐरे को एक नाम दें
- उस वेरिएबल नाम के बाद बराबर का चिन्ह लगाएं। बराबर के चिन्ह के चारों ओर कोई स्पेस नहीं होना चाहिए
- ऐरे को पैरेंथेसिस में संलग्न करें (JavaScript की तरह ब्रैकेट नहीं)
- कोट्स का उपयोग करके अपने स्ट्रिंग टाइप करें, लेकिन उनके बीच कोई कॉमा नहीं
आपका ऐरे घोषणा कुछ इस तरह दिखेगा:
myArray=("cat" "dog" "mouse" "frog")
बस! यह इतना सरल है।
Bash में ऐरे कैसे एक्सेस करें
आपके ऐरे के माध्यम से लूप करने के कुछ अलग तरीके हैं। आप या तो एलिमेंट्स के माध्यम से लूप कर सकते हैं, या इंडेक्स के माध्यम से लूप कर सकते हैं।
ऐरे एलिमेंट्स के माध्यम से लूप कैसे करें
ऐरे एलिमेंट्स के माध्यम से लूप करने के लिए, आपके कोड को कुछ इस तरह दिखना होगा:
for str in ${myArray[@]}; do
echo $str
done
इसे समझने के लिए: यह JavaScript में forEach का उपयोग करने जैसा है। ऐरे (myArray) में प्रत्येक स्ट्रिंग (str) के लिए, उस स्ट्रिंग को प्रिंट करें।
इस लूप का आउटपुट इस तरह दिखता है:
cat
dog
mouse
frog
नोट: स्क्वायर ब्रैकेट में @ सिंबल इंगित करता है कि आप ऐरे में सभी एलिमेंट्स के माध्यम से लूप कर रहे हैं। यदि आप इसे छोड़ देते हैं और बस for str in ${myArray} लिखते हैं, तो ऐरे में केवल पहली स्ट्रिंग प्रिंट होगी।
ऐरे इंडेक्स के माध्यम से लूप कैसे करें
वैकल्पिक रूप से, आप ऐरे के इंडेक्स के माध्यम से लूप कर सकते हैं। यह JavaScript में for लूप की तरह है, और जब आप प्रत्येक एलिमेंट के इंडेक्स को एक्सेस करना चाहते हैं तो उपयोगी है।
इस विधि का उपयोग करने के लिए, आपके कोड को निम्नलिखित जैसा दिखना होगा:
for i in ${!myArray[@]}; do
echo "element $i is ${myArray[$i]}"
done
आउटपुट इस तरह दिखेगा:
element 0 is cat
element 1 is dog
element 2 is mouse
element 3 is frog
नोट: myArray वेरिएबल की शुरुआत में विस्मयादिबोधक चिन्ह इंगित करता है कि आप ऐरे के इंडेक्स को एक्सेस कर रहे हैं न कि एलिमेंट्स को स्वयं। यह भ्रमित करने वाला हो सकता है यदि आप विस्मयादिबोधक चिन्ह का उपयोग निगेशन दर्शाने के लिए करते हैं, इसलिए उस पर ध्यान दें।
एक और नोट: Bash को आमतौर पर वेरिएबल के लिए कर्ली ब्रेसेस की आवश्यकता नहीं होती है, लेकिन ऐरे के लिए होती है। इसलिए आप देखेंगे कि जब आप किसी ऐरे को संदर्भित करते हैं, तो आप सिंटैक्स ${myArray} के साथ करते हैं, लेकिन जब आप किसी स्ट्रिंग या नंबर को संदर्भित करते हैं, तो आप केवल डॉलर साइन का उपयोग करते हैं: $i।
निष्कर्ष
Bash स्क्रिप्ट स्वचालित कमांड लाइन व्यवहार बनाने के लिए उपयोगी हैं, और ऐरे एक बेहतरीन टूल हैं जिनका उपयोग आप डेटा के कई टुकड़ों को संग्रहीत करने के लिए कर सकते हैं।
उन्हें घोषित करना और उपयोग करना कठिन नहीं है, लेकिन यह अन्य भाषाओं से अलग है, इसलिए गलतियां करने से बचने के लिए बारीकी से ध्यान दें।