◆ ksh定义数组:
set -A argname a b c
其中,set -A 告诉shell要建立一个数组,argname是数组名,a b c等字符为数组元素,下标为0,用空格分开.
访问数组的方法:
echo ${argname[*]} 显示数组所有元素
echo ${argname[n]} 显示数组第n个元素
echo ${#argname[*]} 显示数组元素个数
echo ${# argname [@]}
◆ bash:
一对括号表示是数组,数组元素用“空格”符号分割开。Bash只支持一维数组,不支持多维数组。
array_name=(ele1 ele2 ele3 ... elen)
1、访问元素:
获取数组中的元素要使用下标[ ],下标可以是一个整数,也可以是一个结果为整数的表达式
${array_name[index]}
其中,array_name 是数组名,index 是下标。使用@或*可以获取数组中的所有元素。
${array_name[*]}
${array_name[@]}
2、修改或增加元素
直接通过获取元素赋值即可修改或增加元素
array_name[index]=value
3、分片:
直接通过 ${数组名[@或*]:起始位置:长度} 切片原先数组,返回是字符串,中间用“空格”分开,因此如果加上”()”,将得到切片数组,上面例子:c 就是一个新数据。