bash数组操作

普通数组:整数作为索引
关联数组:字符串作为索引(bash 4.0以后)

普通数组:
定义数组和输出:
array_var=(1 2 3 4 5 6)
echo ${array_var[0]}

array_var_02[0]=”test0″
array_var_02[1]=”test1″
array_var_02[2]=”test2″
array_var_02[3]=”test3″
array_var_02[4]=”test4″
array_var_02[5]=”test5″
index=5
echo ${array_var_02[$index]}

输出全部的数据:
array_var=(1 2 3 4 5 6)
echo ${array_var[*]}

输出数组长度:
array_var=(1 2 3 4 5 6)
echo ${#array_var[*]}

一般而言,A=”a b c def” 这样的变量只是将 $A 替换为一个单一的符串,
但是改为 A=(a b c def) ,则是将 $A 定义为组数…
bash 的组数替换方法可参考如下方法:
${A[@]} 或 ${A[*]} 可得到 a b c def (全部组数)
${A[0]} 可得到 a (第一个组数),${A[1]} 则为第二个组数…
${#A[@]} 或 ${#A[*]} 可得到 4 (全部组数数量)
${#A[0]} 可得到 1 (即第一个组数(a)的长度),${#A[3]} 可得到 3 (第四个组数(def)的长度)
A[3]=xyz 则是将第四个组数重新定义为 xyz …

关联数组(4.0版本以上才支持)

发表评论

电子邮件地址不会被公开。 必填项已用*标注

*