{1..$n} 的大括号展开
Brace expansion of {1..$n}
我正在尝试从 1 循环到 n,其中 n 来自用户输入。
如果我这样做:
read n
echo {1..$n}
我得到了输入 5 的输出
{1..5}
如何让它扩展到
1 2 3 4 5
通过尝试使用 for
循环来保持简单,如下所示。
echo "enter number..."
read n
for((i=1;i<=n;i++)); do
echo "$i"
done
或使用 seq
和 for
循环,如下所示。
echo "Enter number:"
read howmany
for i in $(seq 1 $howmany); do
echo "$i";
done
花括号不支持 bash 中的变量,虽然 eval
可以使用但是 它是邪恶的而且有漏洞,为什么这么看link仔细http://mywiki.wooledge.org/BashFAQ/048
我正在尝试从 1 循环到 n,其中 n 来自用户输入。 如果我这样做:
read n
echo {1..$n}
我得到了输入 5 的输出
{1..5}
如何让它扩展到
1 2 3 4 5
通过尝试使用 for
循环来保持简单,如下所示。
echo "enter number..."
read n
for((i=1;i<=n;i++)); do
echo "$i"
done
或使用 seq
和 for
循环,如下所示。
echo "Enter number:"
read howmany
for i in $(seq 1 $howmany); do
echo "$i";
done
花括号不支持 bash 中的变量,虽然 eval
可以使用但是 它是邪恶的而且有漏洞,为什么这么看link仔细http://mywiki.wooledge.org/BashFAQ/048