Goo*_*bot 13 bash shell-script background-process
我想并行运行一些命令。当所有这些命令完成后,开始下一个。我虽然以下方法会起作用
#!/bin/bash
command1 &
command2 &
command3 &&
command4
Run Code Online (Sandbox Code Playgroud)
但它没有。我需要command4在前三个命令全部完成后运行。
Kus*_*nda 28
#!/bin/bash
command1 &
command2 &
command3 &
wait
command4
Run Code Online (Sandbox Code Playgroud)
wait (不带任何参数)将等到所有后台进程退出。
的完整描述wait了在bash手册:
wait [-n] [n ...]等待每个指定的子进程并返回其终止状态。每个都
n可能是一个进程 ID 或一个作业规范;如果给出了作业规范,则等待该作业管道中的所有进程。 如果n未给出,则等待所有当前活动的子进程,返回状态为零。 如果提供了该-n选项,则wait等待任何作业终止并返回其退出状态。如果n指定一个不存在的进程或作业,则返回状态为 127。否则,返回状态为最后等待的进程或作业的退出状态。
| 归档时间: |
|
| 查看次数: |
3542 次 |
| 最近记录: |