有没有办法运行命令(例如ps aux | grep someprocess)n次?
就像是:
run -n 10 'ps aux|grep someprocess'
我想以交互方式使用它,请不要发布脚本.
更新:我之所以这样说的原因是,我在许多机器上工作,我不想将所有我的adaped脚本等导入到每个盒子中,以便在每台机器上获得相同的功能.
解决方法
我不认为内置的命令或shell存在,因为它是Bourne shell for循环的一个简单子集,因此你自己实现这样的命令非常简单.
对于初学者,您可以使用虚拟for循环:
for i in `seq 10`; do command; done
或者根据JimB的建议等效,使用Bash内置来生成序列:
for i in {1..10}; do command; done
这每次迭代十次执行命令 – 它可以是一个管道或一系列命令分隔;或者&&您可以使用$i变量来了解您所在的迭代.
如果你认为这个单线程是一个脚本,所以对于某些未指定(但也许是有效)的原因,你可以将它作为一个命令实现,或许你的.bashrc(未经测试)就是这样的:
#function run run() { number=$1 shift for i in `seq $number`; do $@ done }
用法:
run 10 command
例:
run 5 echo 'Hello World!'