![Bash:通过 cli arg 设置循环范围?](https://linux22.com/image/1538895/Bash%EF%BC%9A%E9%80%9A%E8%BF%87%20cli%20arg%20%E8%AE%BE%E7%BD%AE%E5%BE%AA%E7%8E%AF%E8%8C%83%E5%9B%B4%EF%BC%9F.png)
将 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