当 nohup 进程终止时触发脚本

Trigger a script when nohup process terminates

我的机器上有一些相当耗时的 python 脚本 运行 ~3 小时左右。我不想同时 运行 它们,因为它可能会使我的机器崩溃。单独我有足够的内存,但 运行ning 5 左右可能会导致问题。我正在 运行 远程连接它们,所以我通过 ssh 进入我的服务器并 运行 它们像这样:

nohup python my_script.py > my_output.txt &

这样,如果我的连接中断,我可以重新建立连接,结果就在那里。我想 运行 相同的 python 脚本多次使用不同的命令行参数,这样我就可以 运行 我需要的一切,而不需要每隔几个小时设置下一个。我可以手动将所有参数编码到 python 脚本中并那样做,但它看起来不够优雅。我不想每次执行此操作时都必须 fiddle 使用我的 python 脚本。当其中一个完成时,我可以使用某种侦听器来触发下一个吗?

您真的很想阅读 tmux 或 screen 等实用程序,然后编写 while 的脚本。

我建议编写一个 bash 脚本来按顺序运行 python 个作业:

#!/bin/bash

python3 my_script1.py > my_output1.txt
python3 my_script2.py > my_output2.txt

然后 nohup 那:

nohup ./driver.sh &