如何使用bash shell多次运行命令?

Modified on: Thu, 14 Nov 2019 01:20:02 +0800

有没有办法为 n 次运行命令(例如ps aux|grep someprocess)?

像:

run -n 10  'ps aux|grep someprocess'

我想以交互方式使用它,请不要发布脚本。

更新:我之所以这样说的原因是,我在很多机器上工作,我不想将所有我的adaped脚本等导入到每个盒子中,以便在每台机器上获得相同的功能。 强>

作者:,mahatmanich

最佳答案

我不认为内置的命令或shell存在,因为它是Bourne shell for循环的一个简单子集,因此设计用于实现这样的命令非常简单

对于初学者,您可以使用虚拟for循环:

`seq 10`中的

for i in `seq 10`; do command; done

或者等同于JimB的建议,使用Bash内置来生成序列:

{1..10}中的

for i in {1..10}; do command; done

每次迭代执行command十次 - 它可以是由;&&。您可以使用$i变量来了解您所在的迭代。

如果你认为这个单线程是一个脚本,所以对于某些未指定(但可能有效)的原因,你可以将它作为一个命令来实现,在你的.bashrc上可能是这样的(未经测试):

#function run
run() {
    number=$1
    shift
    for i in `seq $number`; do
      $@
    done
}

用法:

run 10 command

示例:

run 5 echo 'Hello World!'

相关问答

添加新评论