Shell支持一维数组,不支持二维数组。
数字的定义:数组定义要用括号括起来,数组元素之间用空格分割
var2=(1 2 3 4 5 6)
var3=(a[1]=2 a[2]=3)
使用下标获取元素的值
${arr[index]}
${arr[1]]}
使用@或者*获取所有元素的值
${arr[*]}
${arr[#]}
获取数组的长度或者个数
${#arr[*]}
${#arr[#]}
获取元素长度
${#arr[index]}
数组的拼接
所谓 Shell 数组拼接(数组合并),就是将两个数组连接成一个数组
array_new=(${arr1[*]} ${arr2[@]} ...)
array_new=(${arr1[*]} ${arr2[@]} ...)
数组的删除
unset array_name[index]
unset array_name
遍历对数组元素单独输出并求和
array=(1 2 3 4 5 6 7 8 9 10)
for i in "${array[@]}"
do
echo $i
done
for i in "${array[@]}"
do
sum=$((sum+i)) #$((a+b)) 将a和b作为数字运算完赋值;当作算术表达式来处理,并执行该表达式
done
重要:$((a)):#$((a+b)) 将a和b作为数字运算完赋值;当作算术表达式来处理,并执行该表达式