显示所有数组:declare -a

普通数组也可以不声明 declare -a arrary_name

关联数组必须声明 declare -A arrary_name

#两者不可相互转换

数组赋值: 1)单个赋值 arrary_name[index]=value

2)多个赋值(用引号引起,空格分开,()内赋值) arrary_name=("value1" "value2" "value3" "value4")

默认索引下标是从0开始

${arrary_name} 默认是取第一个元素 ${arrary_name[@]}取出所有元素 ${arrary_name[*]}取出所有元素 ${#arrary_name[@]}取数组中元素的个数,可以以此数字为下标给下个元素赋值 arrary_name[${#arrary_name[@]}]=new_value

也可以指定下标赋值: arrary_name=([888]="value1" [666]="value2") 如此下标就是888和666

删除数组:unset arrary_name 删除数组元素:unset arrary_name[index]

数组取值: ${arrary_name[@]:offset:number} offset #要跳过的元素个数 number #要取出的元素个数

#取出偏移之后的所有元素 ${arrary_name[@]:2}

#取出偏移之后的N个元素 ${arrary_name[@]:2:4}

#取出前三个元素 ${arrary_name[@]:0:3}

#取出后三个元素 ${arrary_name[@]:N-3}

关联数组必须声明 wang=(jack x-man captain deadpool doctor spander)

关联数组:declare -A hao=([spander]="revanger-two" [x-man]="revanger-one" )