这当然有效:
$ echo {1..5}
1 2 3 4 5
Run Code Online (Sandbox Code Playgroud)
但是当我尝试用变量替换数字时5,这不再有效:
$ f=5; echo {1..$f}
{1..5}
$ f=5; echo {1..${f}}
{1..5}
$ f=5; echo {1..f}
{1..f}
Run Code Online (Sandbox Code Playgroud)
{#..#}有没有办法在解析构造之前替换变量中的数字?
有一种方法:
:~# f=5 ; eval echo {1..$f}
1 2 3 4 5
Run Code Online (Sandbox Code Playgroud)
选择:
:~# f=5 ; echo `seq 1 $f`
1 2 3 4 5
Run Code Online (Sandbox Code Playgroud)