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

有没有办法运行命令(例如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!'

相关文章

文件查找(find) 1 find 简单的说,就是实时查找指定的内容或条件。特点:最新、最快、最准确。 用法:...
非交互式添加分区 方法一 添加/deb/sdb 下的分区,其实位置为1到1000M,第二个分区位置为1001至3000M,...
编译安装httpd 1 去官网下载源码包 为避免非法软件,一定要去官网下载http://www.apache.org httpd-2.4...
gdisk用法 gdisk - InteractiveGUIDpartitiontable (GPT) manipulator GPTfdisk (akagdisk) isatext-mo...
1 一定用快捷键 这里简单的说下几个常用的快捷按键。 1.1 移动光标快捷键 Crtl + a 光标回到命令行...
bash shell中测试命令 test命令提供了if-than语句中测试不同条件的途径。如果test命令中列出的条件成立...