我想$var in
在 bash 中使用带有范围的 shell 括号扩展。简单地放置{$var1..$var2}
不起作用,所以我去了“横向”......
以下工作,但它有点笨拙。
# remove the split files
echo rm foo.{$ext0..$extN} rm-segments > rm-segments
source rm-segments
Run Code Online (Sandbox Code Playgroud)
有没有更“正常”的方式?
以下 bash 脚本
#!/bin/bash
startNumber=$(( 1 ))
endNumber=$(( $startNumber + 3 ))
#for number in {$startNumber..$endNumber}
for number in {1..4}
do
echo $number
done
exit 0
Run Code Online (Sandbox Code Playgroud)
给出所需的输出
1
2
3
4
Run Code Online (Sandbox Code Playgroud)
但是,当我切换未注释和注释的 for 循环时,输出是
{1..4}
Run Code Online (Sandbox Code Playgroud)
我究竟做错了什么?