如何在bash中导出关联数组(哈希)?

前端之家收集整理的这篇文章主要介绍了如何在bash中导出关联数组(哈希)?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
相关,但不重复: How to define hash tables in Bash?

我可以定义和使用bash哈希,但我无法导出它,即使使用-x标志.例如,以下工作用于导出(并测试输出)正常的字符串变量:

aschirma@graphics9-lnx:/$export animal_cow="moo"
aschirma@graphics9-lnx:/$bash -c "echo \$animal_cow"
moo
aschirma@graphics9-lnx:/$

但是,如果我尝试导出哈希:

aschirma@graphics9-lnx:/$declare -A -x animals
aschirma@graphics9-lnx:/$animals[duck]="quack"
aschirma@graphics9-lnx:/$echo ${animals[duck]}
quack
aschirma@graphics9-lnx:/$bash -c "echo \${animals[duck]}"

aschirma@graphics9-lnx:/$

似乎嵌套的bash shell在其范围内没有哈希.我也通过手动输入嵌套的bash shell并尝试以交互方式使用哈希来验证这一点.

将数组变量编码到环境中并没有什么好方法.看到
http://www.mail-archive.com/bug-bash@gnu.org/msg01774.html(Chet Ramey是bash的维护者)

猜你在找的Bash相关文章