如何在执行下一个命令之前等待并行命令完成(Shell 脚本)

How to wait for a parallel command to finish before executing the next one ( Shell script)

我有 3 个 python 并行执行的命令:

command_1A& command_2A& command_3A&

我需要的是分别等待每一个,当其中一个完成时,应该执行不同的命令。 例如,如果 command_1A 完成,则应执行 command_1B,如果 command_2A 完成,则应执行 command_2B,依此类推。

我找到了一个解决方案来保存进程 ID 并等待它们全部完成,但这不是我需要的。可能有一个简单的解决方案,但我是 shell 脚本编写的新手,我无法在任何地方找到答案。

当然,这就是您所需要的:

{ command1A; command1B; } &
{ command2A; command2B; } &
{ command3A; command3B; } &

对运行说:

  • command1A 后跟 command1B,同时
  • command2A 后跟 command2B,与
  • 并行
  • command3A 后跟 command3B

不要试图省略任何空格或 semi-colons 来缩短上面的内容。