/*
Shell 数组用括号来表示,元素用"空格"符号分割开
*/
定义数组
array_name=(1 2 3 4 5)
array_name=(
1
2
3
4
)
array_name[0]=1
array_name[1]=2
array_name[2]=3
array_name[3]=4
#!/bin/bash my_array=(A B "C" D) echo "第一个元素为: ${my_array[0]}" echo "第二个元素为: ${my_array[1]}" echo "第三个元素为: ${my_array[2]}" echo "第四个元素为: ${my_array[3]}"
执行脚本,输出结果如下所示:
$ chmod +x test.sh $ ./test.sh
第一个元素为: A 第二个元素为: B 第三个元素为: C 第四个元素为: D
读取数组:使用@ 或 * 可以获取数组中的所有元素
value=${array_name[0]} // 读取数组的 首个元素
value=${array_name[@]} // 读取数组中 所有元素
#!/bin/bash my_array[0]=A my_array[1]=B my_array[2]=C my_array[3]=D echo "数组的元素为: ${my_array[*]}" echo "数组的元素为: ${my_array[@]}"
执行脚本,输出结果如下所示:
$ chmod +x test.sh $ ./test.sh 数组的元素为: A B C D 数组的元素为: A B C D
获取数组个数
value=${#array_name[@]} // 读取数组的个数
value=${#array_name[*]} // 读取数组的个数
value=${#array_name[n]} // 获取数组单个元素的长度
#!/bin/bash my_array[0]=A my_array[1]=B my_array[2]=C my_array[3]=D echo "数组元素个数为: ${#my_array[*]}" echo "数组元素个数为: ${#my_array[@]}"
执行脚本,输出结果如下所示:
$ chmod +x test.sh $ ./test.sh 数组元素个数为: 4 数组元素个数为: 4