How do you append to an indirect parameter expansion of an array in BASH?

前端 未结 4 796
孤街浪徒
孤街浪徒 2021-01-14 05:09

I know you can create an indirect parameter expansion to an array like so:

var1=\"target\"
var2=\"arrayname\"
targetarrayname=( \"one\" \"two\" \"three\" )
b         


        
4条回答
  •  情歌与酒
    2021-01-14 06:03

    The declare command takes assignments as arguments, which are expanded before the declaration. Thus, you can introduce any level of indirection when declaring variables. The following works in Bash 3.2.

    $ array=myarray
    $ declare -a "$array+=(\"element 1\")"
    $ echo ${myarray[0]}
    element 1
    

提交回复
热议问题