bash脚本中存在以下问题。我正在尝试使用变量N
作为简单范围的上限,例如
#!/bin/bash
N=10
for n in {1..$N};
do
echo $n
done;
但是,上面的代码没有显示循环中的每个数字,而是显示{1..10}
。如果我将$N
的值更改为10
,则一切正常。如何克服这个问题并将变量用作范围的上限?
答案 0 :(得分:1)
您不能这样做,相反:
n=10
for ((i=0; i<=n; i++)); do
echo $i
done
或:
n=10
for i in $(seq 0 $n); do
echo $i
done