如果我们按如下方式执行脚本,工作流程将会是怎样的

如果我们按如下方式执行脚本,工作流程将会是怎样的

如果我们按如下方式执行脚本,工作流程将会是什么样的:

script1 &
script2 &
script3
script4

我需要在完成脚本 1/2 之后运行脚本 3/4。

答案1

工作流程是不可预测的,如下所示:除非脚本 3 中有逻辑来测试脚本 1 和脚本 2 的状态,否则脚本 3 可能会在脚本 1 或脚本 2 完成之前完成。脚本 4 也是如此:它现在告诉的只是它将在脚本 3 完成后启动,但除非脚本 4 中有逻辑来测试脚本 1 和脚本 2 的状态,否则脚本 1 和/或脚本 2 可能会完成或仍在运行。

这将在后台按顺序运行它们:

(script1; script 2; script3; script 4) &

或者如果 1/3 和 2/4 独立:

(script1; script3) &
(script2; script4) &

nohup如果你不想在退出命令行时停止它

但是如果在其他脚本中执行脚本的话。这样会更简洁,而且没有人会忘记在第一个脚本完成后运行第二个脚本。

相关内容