是否可以在bash中使用变量in语法?

ibr*_*him 1 variables syntax bash

我想知道是否有可能for i in {n..k}用变量写" "循环.

例如;

for i in {1..5}; do
    echo $i
done
Run Code Online (Sandbox Code Playgroud)

这输出

1
2
3
4
5
Run Code Online (Sandbox Code Playgroud)

另一方面

var=5
for i in {1..$var}; do
    echo $i
done
Run Code Online (Sandbox Code Playgroud)

版画

{1..5}
Run Code Online (Sandbox Code Playgroud)

如何使第二个代码与第一个代码一样运行?

ps我知道有很多方法可以通过使用变量来创建循环,但我想特别询问这种语法.

fed*_*qui 6

{N..M}语法中不可能使用变量.相反,你可以做的是使用 seq:

$ var=5
$ for i in $(seq 1 $var) ; do echo "$i"; done
1
2
3
4
5
Run Code Online (Sandbox Code Playgroud)

要么...

$ start=3
$ end=8
$ for i in $(seq $start $end) ; do echo $i; done
3
4
5
6
7
8
Run Code Online (Sandbox Code Playgroud)