【发布时间】:2018-09-05 03:27:13
【问题描述】:
这是 myscript.sh
#!/bin/bash
for i in {1..$1};
do
echo $1 $i;
done
如果我运行myscript.sh 3,输出是
3 {1..3}
代替
3 1
3 2
3 3
显然 $3 包含正确的值,那么为什么 for i in {1..$1} 的行为与我直接编写 for i in {1..3} 的行为不同?
【问题讨论】:
-
您的示例脚本将适用于 ksh93 和 zsh。
标签: bash for-loop brace-expansion