(五)shell数组深入解析

Zaratustra 2020-07-29

数组用法

(1)从0开始 (2)shell只支持一维数组(3) 数组内元素类型可以不同 (4)长度不固定
#!/bin/bash

#数组定义: arr=(1 2 3 4 5)
arr[1]=99
#给指定元素赋值
arr=([2]=10 [4]=2 [5]=34)

# ${arr[index]} 获取数组指定元素
echo ${arr[2]}
echo arr[2] #不能添加
echo ---------

# ${arr[*]} 或 ${arr[@]} 使用@或者*可以获取数组所有元素
echo ${arr[*]}
echo ${arr[@]}
echo ---------

#获取数组长度
#获取字符串的长度是 ${#str} 同理数组长度为 ${#arr[*]}
echo ${#arr[*]}
echo ${#arr[@]}
echo ---------

#数组添加元素
arr[1]=88
echo ${arr[@]}
echo ---------

#数组删除元素
unset arr[5]
echo ${arr[@]}

(五)shell数组深入解析

#!/bin/bash
#数组合并
#利用@ *将数组扩展成列表再合并
#new=(${arr1[*]} ${arr2[*])
#new=(${arr1[@]} ${arr2[@])

arr1=(10 20 30 40 50)
arr2=(10 12 13 14 15)
new=(${arr1[@]} ${arr2[@]})
echo ${new[*]}

#删除数组 unset
unset arr1[0]
echo ${arr1[*]} #删除某下标元素
unset arr2
echo ${arr2[*]} #删除整个数组

相关推荐