如何修改Bash数组的一段



当以下操作失败时,如何修改/操作Bash数组的一段?

$ l=(1 2 3) ; l=([2]=5 6 7)
$ echo ${l[0]};echo ${l[1]};echo ${l[2]};echo ${l[3]};echo ${l[4]};echo ${l[5]}

5
6
7

而不是

1
2
5
6
7

正确的方法是什么?

请改用+=运算符。

$ l=(1 2 3)
$ l+=([2]=5 6 7)
$ declare -p l
declare -a l=([0]="1" [1]="2" [2]="5" [3]="6" [4]="7")

最新更新