İbrahim Tatlıses - Tombul Tombul (Official Audio)
Tartalomjegyzék:
- Bash tömbök
- Bash-tömbök létrehozása
- Numerikusan indexált tömbök létrehozása
- Asszociatív tömbök létrehozása
- Tömbműveletek
- Referencia elemek
- Tömb hossza
- Húzza át a tömböt
- Adjon hozzá új elemet
- Töröljön egy elemet
- Következtetés
A tömbök a leggyakrabban használt és alapvető adatszerkezetek. Gondolhat arra, hogy egy tömb olyan változó, amely több változót tárolhat benne., lefedi a Bash-tömböket, és elmagyarázza, hogyan kell ezeket használni a Bash-szkriptekben.
Bash tömbök
A Bash támogatja az egydimenziós numerikusan indexált és asszociatív tömbtípusokat. A numerikus tömbre egész számokkal hivatkozunk, az asszociatívra pedig húrokkal hivatkozunk.
A numerikusan indexált tömbök a végétől negatív indexekkel érhetők el, a
-1
index az utolsó elemre utal. Az indexeknek nem kell egymással szomszédosnak lenniük.
A legtöbb programozási nyelvvel ellentétben a Bash tömb elemeknek nem kell ugyanannak az adattípusnak lenniük. Hozzon létre egy tömböt, amely mind sztringeket, mind számokat tartalmaz.
A Bash nem támogatja a többdimenziós tömböket, és nem rendelkezhetnek tömb elemekkel, amelyek szintén tömbök.
A tömbben tárolható elemek maximális számára nincs korlátozás.
Bash-tömbök létrehozása
A Bash-tömbök különféleképpen inicializálhatók.
Numerikusan indexált tömbök létrehozása
A bash változó nem betűzett, bármely változó indexelhető tömbként használható, anélkül, hogy azt deklarálná.
Egy tömb kifejezett deklarálásához használja a deklarációs épületet:
declare -a array_name
Az indexelt tömb létrehozásának egyik módja a következő űrlap használata:
array_name=value_1 array_name=value_2 array_name=value_n
Ahol az
index_*
pozitív egész szám.
A numerikus tömb létrehozásának másik módja a zárójelben lévő elemek listájának megadása, üres térrel elválasztva:
array_name=(element_1 element_2 element_N)
Amikor a tömböt a fenti űrlap segítségével hozzák létre, az indexelés nullán kezdődik, azaz az első elem indexe
0
.
Asszociatív tömbök létrehozása
A numerikusan indexelt ellentétben az asszociatív tömböket felhasználásuk előtt be kell jelenteni.
Asszociatív tömb
declare
használja a
declare
deklarációt az
-A
(nagybetűs) opcióval:
declare -A array_name
Asszociatív tömbök a következő űrlap segítségével hozhatók létre:
declare -A array_name array_name=value_foo array_name=value_bar array_name=value_xyz
Ahol az
index_*
lehet bármilyen karakterlánc.
Az alábbi űrlap segítségével asszociatív tömböt is létrehozhat:
declare -A array_name array_name=(=value_foo =value_bar =value_xyz)
Tömbműveletek
A Bash-tömbök szintaxisa eleinte kissé furcsának tűnhet, ám ennek a cikknek az elolvasása után még értelmesebb lesz.
Referencia elemek
Egy elem hivatkozásához meg kell ismernie az elemindexet.
Bármely elemre hivatkozhatunk a következő szintaxissal:
${array_name}
A tömb elem eléréséhez szükséges szintaxis hasonló a legtöbb programozási nyelv szintaxisához. A
${}
göndör kapcsok szükségesek a shell fájlnévkiterjesztő operátorának elkerüléséhez.
Az elemet indexeljük
1
rel:
## declare the array declare -a my_array=("Hydrogen" "Helium" "Lithium" "Beryllium") ## print element echo ${my_array}
Helium
## declare the array declare -a my_array=("Hydrogen" "Helium" "Lithium" "Beryllium") ## print all elements echo "${my_array}"
Hydrogen Helium Lithium Beryllium
Az egyetlen különbség a
@
és a
*
az, ha a
${my_array}
űrlapot dupla idézőjelek veszik körül. Ebben az esetben a
*
kiterjeszti egyetlen szót, ahol a tömb elemeit elválasztják a szóköz.
@
kibővíti az egyes tömb elemeket külön szóval. Ez különösen akkor fontos, ha az űrlapot tömbelemeken keresztül írástudatlansá teszik.
A tömb gombjának kinyomtatásához adja hozzá a
!
operátor a tömb neve előtt:
${!array_name}
Íme egy példa:
## declare the array declare -a my_array=("Hydrogen" "Helium" "Lithium" "Beryllium") ## print all elements echo "${!my_array}"
Tömb hossza
A tömb hosszának meghatározásához használja a következő űrlapot:
${#array_name}
A szintaxis megegyezik az összes elem hivatkozásakor a
#
karakter hozzáadásával a tömb neve előtt.
## declare the array declare -a my_array=("Hydrogen" "Helium" "Lithium" "Beryllium") ## array Length echo ${#my_array}
Húzza át a tömböt
A tömb egyes elemeinek iterálásának leggyakoribb módja a for hurok használata:
declare -a my_array=("Hydrogen" "Helium" "Lithium" "Beryllium") ## Array Loop for i in "${my_array}" do echo "$i" done
A fenti kód megismétlődik a tömbön, és minden elemet új sorba nyomtat:
Hydrogen Helium Lithium Beryllium
Íme egy példa az összes gomb és érték kinyomtatására:
declare -a my_array=("Hydrogen" "Helium" "Lithium" "Beryllium") ## Array Loop for i in "${!my_array}" do echo "$i" "${my_array}" done
0 Hydrogen 1 Helium 2 Lithium 3 Beryllium
Egy másik módszer a tömbön keresztüli hurkolásra: a tömb hosszának megszerzése és a
C style
hurok használata:
declare -a my_array=("Hydrogen" "Helium" "Lithium" "Beryllium") # Length of the array length=${#my_array} # Array Loop for ((i=0; i < ${length}; i++)) do echo $i ${my_array} done
0 Hydrogen 1 Helium 2 Lithium 3 Beryllium
Adjon hozzá új elemet
Új elem hozzáadásához a bash tömbhöz és az index megadásához használja a következő űrlapot:
my_array="New Element"
Íme egy példa:
declare -a my_array=("Hydrogen" "Helium" "Lithium" "Beryllium") ## add new element my_array="Aluminum" ## print all elements echo "${my_array}"
Hydrogen Helium Lithium Beryllium Aluminum
Egy új elem egy új elem hozzáadásához a tömbhöz az index meghatározása nélkül a
+=
operátor használatával. Felvehet egy vagy több elemet:
declare -a my_array=("Hydrogen" "Helium" "Lithium" "Beryllium") ## add new elements my_array+=(Cobalt Nickel) ## print all elements echo "${my_array}"
Hydrogen Helium Lithium Beryllium Cobalt Nickel
Töröljön egy elemet
Egy elem törléséhez meg kell ismernie az elemindexet. Az elem eltávolítható az
unset
paranccsal:
unset my_array
Lássunk egy példát:
declare -a my_array=("Hydrogen" "Helium" "Lithium" "Beryllium") ## remove element unset my_array ## print all elements echo "${my_array}"
Következtetés
Megmagyaráztuk, hogyan lehet numerikusan indexelt és asszociatív tömböket létrehozni. Megmutattuk azt is, hogyan kell itereerálni a tömbökön, kiszámítani a tömb hosszát, hozzáadni és eltávolítani az elemeket.
bash terminálHogyan futtassuk a Bash-et az Ubuntu-n a Windows 10-en?
A Windows alrendszernek engedélyezése a Linux számára lehetővé teszi, hogy futtasson Ubuntu bájtot a Windows 10, , Linux parancssori eszközök, Linux-első eszközök
Bash a hurokért
Három alapvető hurokkonstrukció van a Bash szkriptekben, a hurokhoz, míg a hurokhoz és a hurokig. Ebben az oktatóanyagban bemutatjuk a hurkok alapjait Bash-ban, valamint a szünetet és folytatjuk az utasításokat a hurok áramlásának megváltoztatására.
Bash: csatolja a fájlhoz
Linuxban számos módon lehet szöveget csatolni egy fájlhoz. Ez a cikk néhányat ismertet.