Susunan cangkerang


Berbilang nilai boleh disimpan dalam tatasusunan. Bash Shell hanya menyokong tatasusunan satu dimensi (tatasusunan berbilang dimensi tidak disokong), dan tidak perlu mentakrifkan saiz tatasusunan semasa permulaan (serupa dengan PHP).

Sama seperti kebanyakan bahasa pengaturcaraan, subskrip elemen tatasusunan bermula dari 0.

Tatasusunan Shell diwakili oleh kurungan, dan elemen dipisahkan oleh simbol "ruang" Sintaks adalah seperti berikut:

array_name=(value1 ... valuen)

Contoh

#!/bin/bash
# author:php中文网
# url:www.php.cn

my_array=(A B "C" D)

Kami juga boleh menggunakan subskrip untuk. tentukan tatasusunan :

array_name[0]=value0
array_name[1]=value1
array_name[2]=value2

Baca tatasusunan

Format umum untuk membaca nilai elemen tatasusunan ialah:

${array_name[index]}

Instance

#!/bin/bash
# author:php中文网
# url:www.php.cn

my_array=(A B "C" D)

echo "第一个元素为: ${my_array[0]}"
echo "第二个元素为: ${my_array[1]}"
echo "第三个元素为: ${my_array[2]}"
echo "第四个元素为: ${my_array[3]}"

Laksanakan skrip, hasil keluaran adalah seperti berikut :

$ chmod +x test.sh 
$ ./test.sh
第一个元素为: A
第二个元素为: B
第三个元素为: C
第四个元素为: D

Dapatkan semua elemen dalam tatasusunan

Gunakan @ atau * untuk mendapatkan semua elemen dalam tatasusunan, contohnya:

#!/bin/bash
# author:php中文网
# url:www.php.cn

my_array[0]=A
my_array[1]=B
my_array[2]=C
my_array[3]=D

echo "数组的元素为: ${my_array[*]}"
echo "数组的元素为: ${my_array[@]}"

Laksanakan skrip , hasil keluaran adalah seperti berikut:

$ chmod +x test.sh 
$ ./test.sh
数组的元素为: A B C D
数组的元素为: A B C D

Dapatkan panjang tatasusunan

Kaedah mendapatkan panjang tatasusunan adalah sama dengan kaedah mendapatkan panjang rentetan, contohnya:


#!/bin/bash
# author:php中文网
# url:www.php.cn

my_array[0]=A
my_array[1]=B
my_array[2]=C
my_array[3]=D

echo "数组元素个数为: ${#my_array[*]}"
echo "数组元素个数为: ${#my_array[@]}"

Laksanakan Skrip, hasil output adalah seperti berikut:

$ chmod +x test.sh 
$ ./test.sh
数组元素个数为: 4
数组元素个数为: 4