如何将调用的变量作为后缀添加到另一个变量,然后调用带后缀的变量



我的脚本:

for (( i=1; i <= $j; i++ ))
do
list_$i = $i
echo "$list_$i"
done

预期产出:

1
2
3
.
.
.
etc

我在调用变量时对 echo 语句有问题。

请帮我解决这个问题。

假设$j有一个非负整数值,

for (( i=1; $i<=$j; i=$i+1 ))
do
    list[$i]=$i
    echo "${list[$i]}"
done

使用Bash数组,其中$list是一个单一的结构,一个Bash数组。

首先请记住,变量赋值在=周围没有空格。
你想做的事情,是可能的,但很复杂。

for (( i=1; i <= 6; i++ )); do 
   source <(echo "list_$i=$i")
   varname=list_$i
   echo "${!varname}"
done

您还可以在不同的循环中查看结果

for result in list_{1..6}; do
   echo "${result}=${!result}"
done

最新更新