在shell脚本里面,bash虽然对数组元素个数没有限制,但其只支持一维数组。不过可以使用一些小技巧来模拟二维数组。其实二维数组在本质上等同于一维数组,只不过增加了使用行和列的未知来引用和操作元素的寻址模式。下面我通过几个简单列子演示一下。
实验一:
#!/bin/bash
#
#初始化定义三个数组
arry1=(A B C)
arry2=(D E F)
arry3=(G H I)
#
#使用for循环来读取数组中元素的个数,每次读取完一个数组将其打印到屏幕上并继续读取
for ((i=0;i<4;i++))
do
eval value=\${arry${i}[@]}
for element in ${value}
do
echo -e ${value}
continue 2
done
done
echo
exit 0
运行结果:
实验二:
#!/bin/bash
#
#定义三个一维数组
array1="A B C"
array2="D E F"
array3="G