运行命令N次

时间:2015-03-12 19:18:18

标签: bash shell unix

如果没有在bash中执行for循环,有没有办法执行N次命令?例如:

$ pulldown 123 && pulldown 123 && # ...etc [100 times]

2 个答案:

答案 0 :(得分:3)

可以使用while循环,如下所示:

i=0
while [ $i -lt 100 ]; do
        echo $i
        i=`expr $i + 1`
done

或者,ruby可能与-e开关一起使用,如下所示:

$ ruby -e '100.times { |i| puts i }'

答案 1 :(得分:2)

您可以使用for循环并忽略参数:

for i in $(seq 1 100); do pulldown 123; done

如果由于某种原因你绝对不能使用for循环,你可以使用xargs -n 1并忽略参数,如下所示; -n 1表示每行输入运行一次命令,-I XXX表示用当前输入行替换命令中出现的所有XXX(但是因为我们不在命令中使用它,它被忽略了):

seq 1 100 | xargs -n 1 -I XXX pulldown 123