【发布时间】:2022-01-18 09:19:41
【问题描述】:
我想使用尽可能短的行来连接无限数量的数组,因此我执行了以下代码:
#!/bin/bash
declare -a list1=("element1")
declare -a list2=("element2")
declare -a list3=("element3")
declare -a list4=("element4")
declare -a list
for i in {1..4}
do
list=( ${list[@]} ${list$i[@]} )
done
echo ${list[*]}
但上面的代码不起作用,因为 $i 不被视为变量,错误是:${list$i[@]} 错误替换
【问题讨论】:
-
using shortest lines那你为什么要使用这么多空格?to concatenate unlimited numbers你想输出它们还是将它们存储在一个数组中?请具体。 -
无限?您真的要创建无限数量的变量吗?
-
不关心空格,我用的是更好的视图。我想首先将所有元素放在一个数组中,当然我稍后会使用元素,但是我如何使用变量作为数组名称中的数字来进行连接?
-
只是说数组的数量不受限制,一开始限制在 10 个,但后来我想添加更多,所以它们可能是 100
标签: arrays bash iteration concatenation