数组中可以存放多个值。Bash Shell 只支持一维数组(不支持多维数组),初始化时不需要定义数组大小。
数组元素的下标由 0 开始。
1. 基本语法
Shell 数组用括号来表示,元素用"空格"符号分割开,语法格式如下:
array_name=(value1 value2 ... valuen)
定义数组
#!/bin/bash
my_array=(A B "C" D)
我们也可以使用下标来定义数组:
array_name[0]=value0
array_name[1]=value1
array_name[2]=value2
......
读取数组
读取数组元素值的一般格式是:
${array_name[index]}
获取数组中的所有元素
${my_array[*]}
或者
${my_array[@]}
获取数组的长度
获取数组长度的方法与获取字符串长度的方法相同,例如:
${#my_array[*]}
或者
${#my_array[@]}
取数组最后一位
${my_array[${#my_array[@]}-1]}
注意:获取数组中的所有元素和获取数组的长度类似,区别是获取数组长度前面有个“#”号。
2. 实操案例
[root@jiangnan array]# vi array.sh
[root@jiangnan array]# cat array.sh
#!/bin/bash
# 定义数组
my_array=(A B "C" D)
echo "第三个元素为:${my_array[2]}"
echo "所有元素为:${my_array[*]}"
echo "数组元素个数为:${#my_array[*]}"
[root@jiangnan array]# sh array.sh
第三个元素为:C
所有元素为:A B C D
数组元素个数为:4
[root@jiangnan array]#
微信公众号先已开通,搜索 “江小南和他的小伙伴们” 就能找到我哦,各位小伙伴们可以关注一下,文章会进行同步更新,方便查看哦。