Bash中的多维数组

前端之家收集整理的这篇文章主要介绍了Bash中的多维数组前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我计划一个脚本来管理我的一些Linux系统,并决定是否使用 bashpython

我宁愿这样做一个Bash脚本只是因为命令更容易,但真正的决定因素是配置。我需要能够在配置文件中存储一个多维数组来告诉脚本自己做什么。使用bash存储配置文件中的简单key =值对是很容易的,但是我可以想到做一个多维数组的唯一方法是两层解析引擎,

array=&d1|v1;v2;v3&d2|v1;v2;v3

但是marshall / unmarshall代码可以成为一个熊,它远离用户友好为下一个差的sap,必须管理这个。如果我不能这样做很容易在bash我将简单地写入配置到一个xml文件,并写在python脚本。

有一个简单的方法来做到这一点在bash?

感谢大家。

Bash不支持多维数组,也不支持散列,似乎你想要的值是数组的哈希。这个解决方案不是很漂亮,带有xml文件解决方案应该更好:
array=('d1=(v1 v2 v3)' 'd2=(v1 v2 v3)')
for elt in "${array[@]}";do eval $elt;done
echo "d1 ${#d1[@]} ${d1[@]}"
echo "d2 ${#d2[@]} ${d2[@]}"

猜你在找的Bash相关文章