bash for i in {1 .. $1}无法正常工作

前端之家收集整理的这篇文章主要介绍了bash for i in {1 .. $1}无法正常工作前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
这是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包含正确的值,所以为什么我不在{1 .. $ 1}中的行为与直接在{1..3}中为i写的相同?

您应该使用C风格的for循环来实现这一点:
for ((i=1; i<=$1; i++)); do
   echo $i
done

这避免了外部命令和讨厌的eval语句。

原文链接:https://www.f2er.com/bash/387537.html

猜你在找的Bash相关文章