Баш-масівы з прыкладамі

Масіў - гэта набор элементаў. У Bash масіў можа ўтрымліваць спалучэнне элементаў розных тыпаў, напрыклад Радкі і лічбы.

У гэтым уроку мы абмяркуем, як ствараць і выкарыстоўваць масівы ў Bash. Мы таксама разгледзім аперацыі з масівам, такія як цыкл, друк, атрыманне памеру і змяненне змесціва.



Як стварыць масівы ў Bash

Ёсць два спосабы стварэння масіваў Bash:


Выкарыстанне ключавога слова аб'явіць

declare -a my_bash_array

гэта створыць індэксаваны масіў з імем 'my_bash_array'.

Ініцыялізацыя масіва

Мы таксама можам ствараць і ініцыялізаваць масівы на хаду, выкарыстоўваючы аператар прысваення = і элементы ўнутры фігурных дужак ():


my_bash_array=('apple' 'orange' 'banana')

Ці мы таксама можам паказаць індэкс відавочна

my_bash_array[0]='apple' my_bash_array[1]='orange' my_bash_array[2]='banana' нататка:Па прамежку не павінна быць прабелаў = аператар.

Даўжыня масіва Bash

Каб атрымаць даўжыню або памер масіва, мы выкарыстоўваем ${#array_name[@]}.

Напрыклад:

my_bash_array=(foo bar baz) echo 'the array contains ${#my_bash_array[@]} elements' #Output the array contains 3 elements

Bash Array Loop

Для перабору ўсіх элементаў у масіве Bash мы можам выкарыстоўваць цыкл for:


#!/bin/bash my_array=(foo bar baz) # for loop that iterates over each element for i in '${my_array[@]}' do
echo $i done

Выхад:

foo bar baz

Друк усіх элементаў

Для друку ўсіх элементаў масіва без цыкла мы можам выкарыстаць наступны сінтаксіс:

echo ${my_array[@]}

Даданне элементаў у масіў

Для дадання элементаў у масіў выкарыстоўваем += аператар. Гэта дадасць элемент у канец масіва.

Напрыклад:


my_array=(foo bar) my_array+=(baz) echo '${my_array[@]}' foo bar baz

Ці мы можам выкарыстоўваць індэкс, каб дадаць элемент:

my_array=(foo bar) my_array[2]=baz echo '${my_array[@]}' foo bar baz

Выдаліць элементы з масіва

Каб выдаліць элемент з масіва Bash, мы выкарыстоўваем unset каманда.

Напрыклад:

my_array=(foo bar baz) unset my_array[1] echo ${my_array[@]} foo baz

Выснова

У гэтым уроку мы разгледзелі масівы Баша; як стварыць і ініцыялізаваць масівы ў Bash і як атрымаць даўжыню, цыкл па элементах, надрукаваць элементы і змяніць змест масіва.