Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> बाश प्रोग्रामिंग

बैश में ऐरे वेरिएबल्स, उदाहरण के साथ कैसे उपयोग करें

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

सरणी क्या है

एक सरणी एक प्रकार का चर है जिसमें कई मान हो सकते हैं। यह उन मूल्यों की एक सूची है जिनके माध्यम से आप लूप कर सकते हैं और प्रत्येक व्यक्तिगत मूल्य पर संचालन कर सकते हैं।

उदाहरण के लिए, हो सकता है कि आप फ़ाइलों की सूची पर कोई क्रिया करना चाहें। उस सूची को एक सरणी के रूप में संग्रहीत करके, आप उसमें फ़ाइल नामों के माध्यम से लूप कर सकते हैं और प्रत्येक पर कार्रवाई कर सकते हैं।

सरणी को अनुक्रमित किया जाता है, सरणी में प्रत्येक आइटम की स्थिति को 0 से शुरू होने वाली संख्या द्वारा दर्शाया जाता है ।

बैश सरणियों के लिए यह आवश्यक नहीं है कि सरणी तत्वों को अनुक्रमित किया जाए लगातार - या बिना अंतराल के आसन्न - उदाहरण के लिए, आपके पास सरणी स्थिति 0, 3, 17 के बीच कोई मान नहीं हो सकता है।

आप Linux दस्तावेज़ीकरण प्रोजेक्ट पर बैश सरणियों के बारे में अधिक जानकारी प्राप्त कर सकते हैं।

बैश एरे बनाना

बैश सरणियों में किसी भी प्रकार का बैश चर हो सकता है - पथ, तार, संख्याएँ - यहाँ तक कि अन्य सरणियाँ।

आपको अपनी शैल स्क्रिप्ट में फ़ाइल पथों को स्ट्रिंग्स में क्यों लपेटना चाहिए

नीचे उल्लिखित सरणियों को घोषित करने के कई तरीके हैं।

अप्रत्यक्ष घोषणा

सरणी तत्व के मान को निर्दिष्ट करके सरणी को अप्रत्यक्ष रूप से घोषित किया जा सकता है - सरणी को दिए गए मान के साथ सरणी तत्व के साथ बनाया जाएगा।

ARRAYNAME[INDEX]=VALUE

उदाहरण के लिए:

#!/bin/bash
peopleArray[3]="Tom"

सरणी PeopleArray जब सरणी में कोई मान असाइन किया जाता है तो स्वचालित रूप से (अप्रत्यक्ष रूप से) बनाया जाएगा - इस मामले में, "टॉम" मान को नए बनाए गए PeopleArray में अनुक्रमणिका 3 को असाइन किया गया है ।

प्रत्यक्ष घोषणा

डिक्लेयर कमांड का उपयोग किसी ऐरे को परिभाषित करने के लिए भी किया जा सकता है:

declare -a ARRAYNAME

उदाहरण के लिए:

declare -a peopleArray

यह एक खाली सरणी बनाएगा जिसे PeopleArray . कहा जाता है ।

कंपाउंड असाइनमेंट के माध्यम से बनाना

यह वह तरीका है जिसका आप शायद सबसे अधिक उपयोग करेंगे। यह पहले से असाइन किए गए मानों के साथ एक सरणी बनाता है।

ARRAYNAME=(value1 value2 ...)

यह चर नाम के लिए सरणी का मान निर्दिष्ट करता है। सरणी मान () . में समाहित हैं (मानक कोष्ठक) और रिक्त स्थान से अलग। रिक्त स्थान वाले मान उद्धृत किए जाने चाहिए।

उदाहरण के लिए:

peopleArray=("Tom", "Bill", "Theodore Baker Sr.")

ऐरे को मान असाइन करना

सरणी के अंत में एक नया मान जोड़ना

किसी सरणी में कोई मान जोड़ने के लिए, बिना किसी अनुक्रमणिका के मान निर्दिष्ट करें:

ARRAYNAME[]=VALUE

उदाहरण के लिए:

peopleArray[]="Tony"

मान को किसी सरणी में बदलना

किसी मान को बदलने के लिए, वर्तमान मान के सूचकांक पर मान को अधिलेखित कर दें।

उदाहरण के लिए, यदि आपके पास अनुक्रमणिका 7 के मान के साथ एक सरणी है जिसे आप बदलना चाहते हैं:

peopleArray[7]="Tony"

एक सरणी में मान हटाना

अनसेट . का उपयोग करके किसी सरणी से मान हटाएं कमांड और ऐरे इंडेक्स को निर्दिष्ट करना:

unset ARRAYNAME[INDEX]

उदाहरण के लिए:

unset peopleArray[1]

…सरणी में दूसरा मान हटा देगा PeopleArray

ऐरे मानों को एक्सेस करना

किसी सरणी में मान तक पहुंचने के लिए, आपको घुंघराले ब्रेसिज़ . का उपयोग करना होगा - अन्यथा, बैश सरणी अनुक्रमणिका वाले कोष्ठकों की सही व्याख्या नहीं करेगा:

echo ${ARRAYNAME[INDEX]}

उदाहरण के लिए:

#!/bin/bash
peopleArray=("Tom", "Bill", "Theodore Baker Sr.")
echo ${peopleArray[0]}

...आउटपुट होगा:

Tom

जबकि यदि अंतिम पंक्ति थी:

echo $peopleArray[0]

लूपिंग ऐरे

प्रत्येक तत्व पर संचालन करने के लिए आप सरणियों के साथ जो सबसे आम काम करेंगे, वह उनके माध्यम से लूप है। हम चीजों से बहुत आगे हैं और इस लेख को पहले ही कवर कर चुके हैं।


  1. रूबी के ऐरे क्लास का उपयोग कैसे करें (उदाहरण + उपयोगी तरीके)

    एक सरणी क्या है? एक सरणी एक अंतर्निहित रूबी वर्ग है, जिसमें शून्य या अधिक वस्तुओं की सूची होती है , और इसमें वे विधियां शामिल हैं जो इन सभी वस्तुओं को आसानी से जोड़ने, एक्सेस करने और लूप करने में आपकी सहायता करती हैं। यह मददगार है, क्योंकि यदि सरणियाँ मौजूद नहीं होतीं तो आपको कई चरों का उपयोग करना

  1. उदाहरण के साथ, लिनक्स में वॉच कमांड का उपयोग कैसे करें

    लिनक्स में वॉच कमांड एक काम करता है - एक कमांड को दोहराता है और परिणाम को बार-बार आउटपुट करता है, जिससे आप परिवर्तनों को देख सकते हैं। यहां इसका उपयोग करने का तरीका बताया गया है। कमांड सिंटैक्स देखें वॉच कमांड का सिंटैक्स इस प्रकार है: watch OPTIONS COMMAND ध्यान दें कि: विकल्प नीचे दी गई तालिका

  1. Excel VBA (20 उदाहरण) के साथ तालिका संदर्भ का उपयोग कैसे करें

    बड़े डेटासेट वाली Excel कार्यपुस्तिकाओं में, किसी तालिका को उसकी संपूर्ण श्रेणी के बजाय उसके नाम से संदर्भित करना सुविधाजनक हो सकता है। एक्सेल में वीबीए का उपयोग करना किसी भी ऑपरेशन को करने का सबसे तेज़, सबसे विश्वसनीय और सबसे कुशल तरीका है। यदि आप एक्सेल वीबीए के साथ तालिका का संदर्भ कैसे लें जानने