:> export ar=(foo bar baz) # create and "export" array
:> bash -c 'echo ${ar[1]}' # array is not visible in a regular child process
:> declare -p ar # get a string which correctly creates the array
declare -a ar=([0]="foo" [1]="bar" [2]="baz")
:> my_array="$(declare -p ar)" bash -c 'eval "$my_array";echo ${ar[1]}'
bar
O eval
transforma a variável de string em uma variável de matriz. O eval
só deve ser usado com fontes de dados confiáveis.