将 for 循环范围设置为 20 像这样可以正常工作:
$ cat test.sh
#!/bin/bash
for i in {1..20}; do
echo "$i"
done
但是如何使用命令行中的参数设置计数限制?
for i in {1.."$1"}; do
echo "$i"
done
$./test.sh 55
{1..55}
答案1
要扩展您已有的功能,您可以使用 eval。
#!/bin/bash
for i in $(eval echo {1.."$1"}); do
echo "$i"
done