在Bash中启动多个进程并计算它们需要多长时间

时间:2017-12-07 00:21:29

标签: bash process

如何在bash和时间内启动多个进程? 从this question我知道如何在bash脚本中启动多个进程但是使用time script.sh不起作用,因为在脚本结束后生成的进程结束。 我尝试使用wait,但这并没有改变任何东西。 以下是完整的脚本:

for i in `seq $1`
do
    ( ./client & )
done
wait # This doesn't seem to change anything

我正在尝试完成所有流程的总时间,而不是每个流程的时间。

1 个答案:

答案 0 :(得分:3)

为什么围绕client调用括号?那将在子shell中运行命令。由于后台作业不在顶层shell中,这就是等待无效的原因( shell中没有等待的作业)。

然后你可以在time循环内添加for,它应该可以正常工作。