Shell数组拼接,Shell数组合并方法

Shell中,可以使用以下几种方法实现数组的拼接或合并:

1. 使用空格连接数组元素:

array1=(a b c)
array2=(d e f)
array3="${array1[@]} ${array2[@]}"
echo $array3  # a b c d e f

2. 使用+=操作符:

 
array1=(a b c)
array2=(d e f)
array1+=("${array2[@]}")
echo ${array1[@]} # a b c d e f

3. 使用临时变量保存数组,并扩展到目标数组:

array1=(a b c)  
array2=(d e f)
temp=(${array1[@]} ${array2[@]})
array1=(${temp[@]})  
echo ${array1[@]}  # a b c d e f

4. 将一个数组的所有元素追加到另一个数组:

array1=(a b c)
array2=(d e f)
array1=("${array1[@]}" "${array2[@]}")
echo ${array1[@]}   # a b c d e f 

5. 使用declare -p声明子数组,然后扩展到目标数组:

array1=(a b c)
array2=(d e f)
declare -p array2
array1+=("${array2[@]}")  
echo ${array1[@]} # a b c d e f

以上是Shell中常用的数组拼接与合并的几种方法。

总的来说,使用+=操作符或临时变量的方法比较简洁,而将一个数组的元素直接追加到另一个数组的方法较为繁琐。

© 版权声明
THE END
喜欢就支持一下吧
点赞9 分享
评论 抢沙发

请登录后发表评论