{#..#} 生成一系列数字或字符,类似于 Python 中的 range()。如果我echo {1..5}在命令行中执行命令,我有:
1 2 3 4 5
Run Code Online (Sandbox Code Playgroud)
相反,以下 bash 脚本无法按预期工作。
for i in {1..3};
do
echo "Iteration $i"
done
Run Code Online (Sandbox Code Playgroud)
将打印:
Iteration {1..3}
Run Code Online (Sandbox Code Playgroud)
为什么?
*我可以使用,seq但我读到它已经过时了(http://www.cyberciti.biz/faq/bash-for-loop/)