Vitajte na [www.pocitac.win] Pripojiť k domovskej stránke Obľúbené stránky
1. Reťazce oddelené za bieli:
Toto je najjednoduchšia metóda. V podstate ukladáte prvky ako jeden reťazec, oddelený priestormi (alebo inými delimitermi, ktoré si vyberiete). Prístup k jednotlivým prvkom vyžaduje manipuláciu s reťazcami.
`` `Bash
my_array ="Apple Banana Cherry"
first_element ="$ {my_array %% *}" #Removes všetko od prvého priestoru ďalej.
Echo "$ first_element" # výstup:Apple
secon_element ="$ {my_array #*}" #Remove všetko do prvého priestoru.
secon_element ="$ {secon_element %% *}" #Remova od prvého priestoru ďalej
Echo "$ secon_element" # výstup:banán
#ITERATION (menej efektívne):
pre ovocie v $ my_array; robiť
Echo „$ ovocie“
vykonaný
`` `
Obmedzenia: Tento prístup je náchylný na chyby, ak prvky poľa obsahujú samotné medzery.
2. Používanie polí v bash (a ďalšie škrupiny s podporou poľa):
Bash (a niektoré ďalšie moderné škrupiny) poskytujú robustnejšiu podporu polí.
`` `Bash
my_array =("Apple" "banán" "čerešňa")
echo "$ {my_array [0]}" # výstup:Apple
echo "$ {my_array [1]}" # výstup:banán
echo "$ { # my_array [@]}" # výstup:3
pre I in "$ {! my_array [@]}"; #itujte prostredníctvom indexov
echo "$ {my_array [i]}"
vykonaný
pre ovocie v "$ {my_array [@]}"; robiť
Echo „$ ovocie“
vykonaný
#Správanie prvkov:
my_array+=("dátum")
echo "$ {my_array [3]}" #output:dátum
#Appending to Array:
my_array+=(Grape Orange)
#ROMOVING ELEKTY (menej priame, vyžaduje radenie):
Unset 'my_array [1]' #Removes Element pri indexe 1 (banán)
#Protive, že indexy sa automaticky neposunú nadol. Po vymazaní nie je vstavaný posun.
pre ovocie v "$ {my_array [@]}"; robiť
Echo „$ ovocie“
vykonaný
`` `
Dôležité úvahy:
* citácia: Vždy citujte premenné poľa (napr. `" $ {My_array [@]} "`), aby ste zabránili rozdeleniu slov a glóbusu, čo môže viesť k neočakávanému správaniu. To je obzvlášť kritické, keď prvky poľa môžu obsahovať medzery alebo špeciálne znaky.
* index 0: Polia v bash sú 0-indexované, čo znamená, že prvý prvok je v indexe 0.
* Špecifické: Syntax a funkcie dostupné pre polia sa môžu mierne líšiť v závislosti od konkrétneho obalu, ktorý používate (bash, zsh, ksh atď.).
3. Používanie nástrojov príkazového riadku pre operácie podobné polí:
Pre zložitejšie manipulácie s poľami (triedenie, filtrovanie atď.) Často považujete za efektívnejšie používanie externých pomôcok príkazového riadku ako „Awk`,` Sed` alebo `Sort`. Tieto nástroje vynikajú pri spracovaní textu, ktoré sa dajú prispôsobiť tak, aby pracovali s údajmi štruktúrovanými ako vymedzené reťazce.
Napríklad na zoradenie prvkov reťazca oddeleného rozlíšeného:
`` `Bash
my_array ="Apple Banana Cherry"
Echo "$ my_array" | tr '' '\ n' | Zorenie | tr '\ n' ''
`` `
Stručne povedané, zatiaľ čo škrupiny Unix nemajú vstavané bohaté štruktúry polí, ako sú iné jazyky, podporu Bashovej poľa je pre mnoho úloh primeraná. V prípade zložitých manipulácií zvážte využitie sily nástrojov na spracovanie textu. Nezabudnite vždy citovať svoje premenné poľa správne, aby ste sa vyhli potenciálnym chybám.