bash shell不是已经一一运行命令并等待执行的命令完成吗?那么我们什么时候以及为什么需要这个wait
命令呢?
答案1
wait
如果您在后台启动了任务,则可以使用,例如
#!/bin/bash
task1 &
task2 &
task3 &
wait
echo done
在此示例中,脚本启动三个后台任务。这些将在后台同时运行,并将wait
等待所有三个任务完成。返回后wait
,脚本将继续处理echo done
.
正如评论中指出的,wait
可以给出作业号 ( wait %3
) 或 pid ( wait 1234
)。虽然在交互式 bash 中很容易(使用job
或ps
)找到这些内容,但在批处理模式下可能会更困难。