我们何时以及为何需要 bash 上的“wait”命令?

我们何时以及为何需要 bash 上的“wait”命令?

bash shell不是已经一一运行命令并等待执行的命令完成吗?那么我们什么时候以及为什么需要这个wait命令呢?

答案1

wait如果您在后台启动了任务,则可以使用,例如

#!/bin/bash
task1 &
task2 &
task3 &
wait
echo done

在此示例中,脚本启动三个后台任务。这些将在后台同时运行,并将wait等待所有三个任务完成。返回后wait,脚本将继续处理echo done.


正如评论中指出的,wait可以给出作业号 ( wait %3) 或 pid ( wait 1234)。虽然在交互式 bash 中很容易(使用jobps)找到这些内容,但在批处理模式下可能会更困难。

相关内容