Shell Scripting Tutorial for Beginners 14 - Array variables
Talaan ng mga Nilalaman:
- Mga Bash Arrays
- Paglikha ng Mga Bash Arrays
- Paglikha ng mga naka-index na mga pag-index
- Paglikha ng mga pag-uugnay ng samahan
- Mga Operasyong Array
- Mga Sangkap ng Sanggunian
- Haba ng Array
- Loop sa pamamagitan ng array
- Magdagdag ng isang bagong elemento
- Tanggalin ang isang elemento
- Konklusyon
Ang mga arrow ay isa sa mga pinaka ginagamit at pangunahing istruktura ng data. Maaari mong isipin ang isang array ay isang variable na maaaring mag-imbak ng maraming mga variable sa loob nito., tatakpan namin ang mga darating na Bash, at ipaliwanag kung paano gamitin ang mga ito sa iyong mga script ng Bash.
Mga Bash Arrays
Sinusuportahan ng Bash ang isang-dimensional na naka-index na naka-index at mga uri ng mga nauugnay na mga uri. Ang mga numerong arrays ay isinangguni gamit ang mga integer, at ang pakikipag-ugnay ay isinangguni gamit ang mga string.
Ang mga naka-index na numero ay maaaring ma-access mula sa dulo gamit ang mga negatibong indeks, ang indeks ng
-1
sanggunian ang huling elemento. Ang mga indeks ay hindi kinakailangang magkalat.
Hindi tulad ng karamihan sa mga wika ng programming, ang mga elemento ng array ng Bash ay hindi kailangang maging pareho ng uri ng data. Maaari kang lumikha ng isang array na naglalaman ng parehong mga string at numero.
Hindi suportado ng Bash ang mga multidimensional na mga arrays, at hindi ka maaaring magkaroon ng mga elemento ng array na darating din.
Walang limitasyon sa maximum na bilang ng mga elemento na maaaring maiimbak sa isang array.
Paglikha ng Mga Bash Arrays
Ang mga darating sa Bash ay maaaring masimulan sa iba't ibang paraan.
Paglikha ng mga naka-index na mga pag-index
Ang mga variable ng bash ay hindi tinadtad, ang anumang variable ay maaaring magamit bilang isang index na naka-index nang hindi ito ipinahayag.
Upang malinaw na magpahayag ng isang array, gamitin ang deklaradong builtin:
declare -a array_name
Ang isang paraan upang lumikha ng isang naka-index na array ay sa pamamagitan ng paggamit ng sumusunod na form:
array_name=value_1 array_name=value_2 array_name=value_n
Kung saan ang
index_*
ay isang positibong integer.
Ang isa pang paraan upang lumikha ng isang bilang ng array ay upang tukuyin ang listahan ng mga elemento sa loob ng mga panaklong, na pinaghiwalay ng walang laman na puwang:
array_name=(element_1 element_2 element_N)
Kapag ang array ay nilikha gamit ang form sa itaas, ang pag-index ay nagsisimula sa zero ibig sabihin, ang unang elemento ay may isang index ng
0
.
Paglikha ng mga pag-uugnay ng samahan
Hindi tulad ng mga naka-index na ayon sa numero, dapat na ideklara ang mga kaakibat na arrays bago nila magamit.
Upang maipahayag ang isang kaakibat na hanay gamitin ang
declare
builtin na may pagpipilian na
-A
(malalaking titik):
declare -A array_name
Ang mga kaugnay na arrays ay maaaring malikha gamit ang sumusunod na form:
declare -A array_name array_name=value_foo array_name=value_bar array_name=value_xyz
Kung saan ang
index_*
maaaring maging anumang string.
Maaari ka ring lumikha ng isang pangkomunikasyon na ginagamit gamit ang form sa ibaba:
declare -A array_name array_name=(=value_foo =value_bar =value_xyz)
Mga Operasyong Array
Bash arrays syntax ay maaaring magmukhang isang maliit na kakaiba sa una, ngunit ito ay magkakaroon ng higit pang kahulugan sa sandaling basahin mo ang artikulong ito.
Mga Sangkap ng Sanggunian
Upang tukuyin ang isang solong elemento, kailangan mong malaman ang elemento ng index.
Anumang elemento ay maaaring mai-refer gamit ang sumusunod na syntax:
${array_name}
Ang syntax para sa pag-access ng isang elemento ng array ay katulad ng syntax ng karamihan sa mga wika sa programming. Kinakailangan ang mga kulot na
${}
upang maiwasan ang mga nagpapalawak ng filename ng mga operator ng pagpapalawak.
I-print natin ang elemento na may index ng
1
:
## 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
Ang pagkakaiba lamang sa pagitan ng
@
at
*
ay kapag ang form na
${my_array}
ay napapalibutan ng dobleng quote. Sa kasong ito,
*
lumalawak sa isang solong salita kung saan ang mga elemento ng array ay pinaghihiwalay ng espasyo.
@
nagpapalawak ng bawat elemento ng array sa isang hiwalay na salita. Ito ay lalong mahalaga kapag ginagamit ang form upang hindi marunong magbasa sa pamamagitan ng mga elemento ng array.
Upang i-print ang mga susi ng array idagdag ang
!
operator bago ang pangalan ng array:
${!array_name}
Narito ang isang halimbawa:
## declare the array declare -a my_array=("Hydrogen" "Helium" "Lithium" "Beryllium") ## print all elements echo "${!my_array}"
Haba ng Array
Upang makuha ang haba ng isang array, gamitin ang sumusunod na form:
${#array_name}
Ang syntax ay pareho tulad ng kapag tinutukoy ang lahat ng mga elemento ng pagdaragdag ng
#
character bago ang pangalan ng array.
## declare the array declare -a my_array=("Hydrogen" "Helium" "Lithium" "Beryllium") ## array Length echo ${#my_array}
Loop sa pamamagitan ng array
Ang pinaka-karaniwang paraan upang umulit sa bawat item sa isang array ay sa pamamagitan ng paggamit ng para sa loop:
declare -a my_array=("Hydrogen" "Helium" "Lithium" "Beryllium") ## Array Loop for i in "${my_array}" do echo "$i" done
Ang code sa itaas ay magpapagaan sa hanay at mag-print ng bawat elemento sa isang bagong linya:
Hydrogen Helium Lithium Beryllium
Narito ang isang halimbawa kung paano i-print ang lahat ng mga susi at halaga:
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
Ang isa pang paraan upang mag-loop sa pamamagitan ng isang array ay upang makuha ang haba ng array at gamitin ang
C style
loop:
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
Magdagdag ng isang bagong elemento
Upang magdagdag ng isang bagong elemento sa isang bash array at tukuyin ang index na gamitin ang sumusunod na form:
my_array="New Element"
Narito ang isang halimbawa:
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
Ang isa pang paraan ng pagdaragdag ng isang bagong elemento sa isang array nang hindi tinukoy ang index ay sa pamamagitan ng paggamit ng
+=
operator. Maaari kang magdagdag ng isa o maraming elemento:
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
Tanggalin ang isang elemento
Upang matanggal ang isang solong elemento, kailangan mong malaman ang elemento ng index. Ang isang elemento ay maaaring alisin gamit ang di-
unset
utos:
unset my_array
Tingnan natin ang isang halimbawa:
declare -a my_array=("Hydrogen" "Helium" "Lithium" "Beryllium") ## remove element unset my_array ## print all elements echo "${my_array}"
Konklusyon
Ipinaliwanag namin kung paano lumikha ng mga naka-index na numero at pag-uugnay ng mga kaugnay. Ipinakita rin namin kung paano umulit sa pamamagitan ng mga arrays, kalkulahin ang haba ng array, at idagdag at alisin ang mga elemento.
terminal ng bashCentrino 2 Sa VPro Pagdating sa Agosto
Mga laptop na batay sa Centrino 2 ng Intel na may vPro ay pindutin ang merkado sa Agosto.
Ang Pagdating ng Bug sa Facebook ng Petsa ng Pagdiriwang ng mga Miyembro
Hindi sinasadya ng Facebook ang mga petsa ng kapanganakan ng 80 milyong miyembro nito sa katapusan ng linggo.
Digital Comics Pagdating sa Wii sa Japan
Apat na pinakamalaking publisher ng mga komikero sa Japan ang nagtitipon upang magdala ng mga digital na bersyon ng kanilang mga magasin sa Nintendo ...







