{..} 中变量的用法

{..} 中变量的用法

有人可以解释一下为什么下面的代码

for i in {1..5};do
echo "hello"
done

印刷

hello
hello
hello
hello
hello

但以下

num=5

for i in {1..$num};do
echo "hello"
done

印刷

hello

答案1

这是因为大括号扩展发生在变量扩展之前。

您可以使用seq

num=5
for i in $(seq 1 $num) ; do
    echo hello
done

相关内容