并行bash命令之间有一定的延迟

时间:2015-01-14 21:06:40

标签: bash shell

我已熟悉sleep和usleep命令。但我不知道如何将它们用于并行命令,这些命令应该相对于前一个命令的开始时间有一定的延迟。我的意思是这样的(命令1到n应该并行运行,并且它们的开始时间之间有延迟):

Command 1's start time: 0
Command 2's start time: 0+d
Command 3's start time: 0+2d
.
.
.
Command n's start time: 0+(n-1)d

1 个答案:

答案 0 :(得分:3)

如果您只是在shell中的后台运行它们,那么您可以在启动命令后让每个循环休眠。

for cmd in cmd1 cmd2 ... cmdN; do
    eval ${cmd} &
    sleep ${d}
done