Úvod do poľa v Unixe

Array je dátová štruktúra, ktorá obsahuje skupinu prvkov, ktoré sú typické pre rovnaký typ údajov, ako napríklad reťazec, celé číslo, float atď. Štruktúra dát je k dispozícii aj v Unixe.

  • Array in Unix: Je to zbierka prvkov, ktoré môžu, ale nemusia byť rovnakého typu údajov.
  • Register: Pole je založené na nule, čo znamená, že na prvky poľa sa odkazuje počiatočnou nulou indexu.
  • Veľkosť: Neexistuje maximálny limit veľkosti poľa

Syntax poľa v Unixe

Pri skriptovaní shellu existuje niekoľko spôsobov, ako vytvoriť pole. Prejdeme si podrobne každú z nich:

1. Nepriame vyhlásenie: Tu je hodnota priradená konkrétnemu indexu na cestách. Príklad ktorého je uvedený nižšie.

syntaxe:

array_name(index) = value

2. Explicitné vyhlásenie: Najprv sa deklaruje pole a potom sa k nemu priradia hodnoty. Declare je vstavané kľúčové slovo a -a je možnosť čítania vstavanej, ktorá umožňuje čítanie a priraďovanie hodnôt.

syntaxe:

declare -a array_name

3. Zložené zloženie: Tu je pole deklarované s viacerými hodnotami súčasne.

syntaxe:

array_name = (value1 value2 value3 . . . valueN)

alebo

array_name = ((0)=value1, (1)=value2, (2)=value3..)

Tu je index voliteľný, ak nie je poskytnutý, hodnota je priradená poslednému plus plus

Ako Array funguje v Unixe?

Naučili sme sa rôzne spôsoby vytvárania poľa v Unixe, teraz sa pohneme vpred a uvidíme rôzne operácie, ktoré je možné vykonávať v poli Unix.

1. Vytvoríme pole mien

2. Na prístup ku všetkým prvkom poľa použite (*) alebo (@)

kód:

echo $(first_name(*))
echo $(first_name(@))

Poznámka: Príkaz echo je vstavaný príkaz v systéme Unix, ktorý sa používa na zobrazenie textu alebo reťazca, ktorý sa odovzdáva ako argument pre príkaz. Syntax „echo“ je uvedená nižšie.

syntaxe:

echo (options) (arguments)

3. Prístup k akémukoľvek konkrétnemu prvku reťazca pomocou jeho indexu.

kód:

echo $(first_name(0))
echo $(first_name(1))
echo $(first_name(2))

Výkon:

Poznámka: () zložené zátvorky sa používajú na označenie obsahu poľa.

4. Tlač prvkov v rozsahu. Syntax pre to isté je nasledovná:

syntaxe:

echo $array_name(which element):starting_index:count_element)

Oboznámme sa s tým istým.

kód:

echo $(first_name(@):0:2)
echo $(first_name(@):2:3)
echo $(first_name(0):1:2)

Výkon:

@ - označuje všetky prvky poľa
V príkaze echo $ (first_name (@): 0: 2)
@ zvážte všetky prvky poľa. 0 - znamená začať s týmto konkrétnym indexom a 2 zobrazuje počet prvkov od počiatočného bodu
2 zobrazuje niekoľko prvkov od počiatočného bodu

V tomto príkaze echo $ (first_name (0): 1: 2)
0 - zvážte 0. prvok poľa. 1 je počiatočný bod a 2 - je počet prvkov od počiatočného bodu

5. Ak chcete získať veľkosť poľa

kód:

echo $(#first_name(@))
or
echo $(#first_name(*))

Výkon:


Poznámka: # sa používa na vyhľadanie dĺžky špecifického prvku poľa.

6. Nájsť dĺžku špecifického prvku poľa

kód:

echo $(#first_name(0))

Výstup :

7. Ak chcete získať index poľa pomocou príkazu nižšie.

kód:

echo $(!first_name(@))

Výkon:


Poznámka :! sa používa na získanie indexu poľa.

8. Na odstránenie poľa v skripte sa používa príkaz unset. Je to zabudovaný príkaz zničiť pole alebo akýkoľvek prvok poľa

syntaxe:

unset array_name

kód:

unset first_name

9. Vymazanie prvku z ľubovoľného špecifického indexu

unset first_name(2)

Týmto sa odstráni prvok v indexe 2.

10. Hľadanie špecifického vzoru v poli.

kód:

echo $(first_name(@)/*(aA)*/)

Výkon:

Prvé meno (@): tu odkazuje na všetky prvky poľa
/ vzor, ​​ktorý sa má prehľadávať /: Je to vzor, ​​ktorý sa má prehľadávať v poli alebo v jeho prvku.
Ak sa nájde zápas, vráti 1 a 0, ak sa nenájde žiadna zhoda.

11. Vyhľadať konkrétny vzor a nahradiť ho v danom poli.

kód:

echo $(first_name(@)//a/A)

first_name (@): Zvážte všetky prvky poľa
// vzor, ​​ktorý sa má prehľadať / náhradný reťazec /: Vyhľadať a nahradiť reťazec

Výkon:

first_name (2): Vyhľadajte a nahradiť operácie, ktoré sa majú vykonať na prvku indexom 2.

Pri vykonávaní operácie vyhľadávania a nahradzovania sa v pôvodnej hodnote poľa nevykonávajú žiadne zmeny. Vracia novú hodnotu, ktorú je možné uložiť v rovnakých alebo rôznych premenných.

12. Na vykonanie operácie s prvkami poľa môžeme použiť slučky. Rovnako ako akýkoľvek iný programovací jazyk, Bourne shell podporuje dva typy slučiek, tj pre slučku a slučku. Pozrime sa na príklad, ktorý iteruje cez pole pomocou slučky.

kód:

Arr = (1 2 3 4 5)
for i in “$(Arr(@))”
do
echo $i
done

Výstup :

Podobne môžete iterovať cez pole pomocou slučky while.

Majte na pamäti, že v Unixe sú dostupné rôzne rôzne typy škrupín, ako je Bash, K shell, Bourne shell atď. Shell nie je nič iné ako rozhranie k unixovým systémom s rôznymi sadami príkazov a funkcií. Takže na základe rôznych typov shellu sú s maticou a jej operáciami spojené rôzne syntaxe s malou odchýlkou ​​v syntaxi príkazov, ktoré sú uvedené vyššie.

Bash Shell umožňuje operácie polí aj s premennými bez toho, aby boli premenné explicitne deklarované ako pole. Pozrime sa na príklad, aby sme lepšie porozumeli vyššie uvedenému vyhláseniu.

kód:

String_variable = India is a democratic country
echo “$(string(0))”

Výkon:

záver

Pole je v podstate zbierka položiek uložených na súvislom mieste v pamäti. Účelom vytvorenia poľa je uložiť viac položiek rovnakého typu spolu s rovnakými alebo rôznymi typmi údajov. V praktickom scenári, prečo maticová štruktúra zaostáva v popularite, je jej nedostatočná kompatibilita s rôznymi škrupinami a zložitými štruktúrami.

Odporúčané články

Toto je príručka pre Array v Unixe. Tu diskutujeme syntax a fungovanie poľa v Unixe spolu s rôznymi príkladmi a implementáciou kódu. Ďalšie informácie nájdete aj v nasledujúcich článkoch -

  1. Linux Proxy Server
  2. Druhy škrupín v Linuxe
  3. Vytvorenie používateľa v systéme Linux
  4. Systém súborov Unix
  5. Sprievodca po slučke skriptovania v prostredí Shell

Kategórie: