【发布时间】:2014-10-28 23:43:10
【问题描述】:
我遇到了以下问题: 我有一个包含多个数组的配置文件(用 bash 编写),这些数组的数量因配置而异。每个数组包含三个值。
declare -a array0
array0=(value1 value2 value3)
#
declare -a array1
array1=(value1 value2 value3)
#
declare -a array2
array2=(value1 value2 value3)
现在,这个配置文件被引入到主 bash 脚本中。我想从一个数组到另一个数组并将值存储到单个变量中。我的实际解决方案:
for ((i=0;i=2;i++))
do
if [ "$i" = 0 ]
then
wantedvalue1="${array0["$i"]}"
fi
if [ "$i" = 1 ]
then
wantedvalue2="${array0["$i"]}"
fi
if [ "$i" = 2 ]
then
wantedvalue3="${array0["$i"]}"
fi
done
我想,这将适用于一个特定的数组。但是我怎样才能告诉脚本像这样分析配置文件中的每个数组呢?
谢谢你的帮助!
【问题讨论】:
-
不能再添加一个for循环吗?
-
可能会有 50 个或更多的数组。我真的不想在我的代码中放置 50 个 for 循环。
-
或许值得在这里提供更多上下文。你到底想达到什么目的?为什么还要像这样单独创建变量?