我的脚本:
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