Shell数组
数组中可以存放多个值。Bash Shell只支持一维数组(不支持多维数组),初始化时不需要定义数组大小。与大部分编程语言列类似,数组元素的下表由0开始。
Shell数组用括号来表示,元素用“空格”符号分隔开,语法格式如下:
arr_name=(value1 value2 ... valuen)
读取数组元素值得一般格式是:
${array_name[index]}
实例
#!/bin/bash my_arr=(ElementA ElemnetB "C" D) echo "第一个元素为:${my_arr[0]}" echo "第二个元素为:“${my_arr[1]}" echo "第三个元素为:${my_arr[2]} echo "第四个元素为:${my_arr[3]}
执行脚本,数据结果为:
第一个元素为:ElementA 第二个元素为:“ElemnetB 第三个元素为:C echo 第四个元素为:D
获取数组中的所有元素
使用@或*可以获取数组中的所有元素,例如
#!/bin/bash my_arr[0]=a my_arr[1]=b my_arr[2]=c my_arr[3]=d echo "数组的元素为:${my_arr[@]}" echo "数组的元素为:${my_arr[*]}"
执行脚本,输出结果为:
数组的元素为:a b c d
数组的元素为:a b c d
获取数组的长度
获取数组长度的方法与获取字符串长度的方法相同,例如:
#!/bin/bash my_arr[0]=a my_arr[1]=b my_arr[2]=c my_arr[3]=d echo "数组元素的个数为:${#my_arr[@]}" echo "数组原色的个数为:${#my_arr[*]}"
执行脚本,输出结果如下所示:
[root@localhost shell]# ./arrayEle.sh
数组元素的个数为:4 数组原色的个数为:4

浙公网安备 33010602011771号