gpt4 book ai didi

python - 每隔 x 小时运行一个进程

转载 作者:太空宇宙 更新时间:2023-11-04 05:17:16 25 4
gpt4 key购买 nike

我有一个 python 脚本,我正在运行它,如下所示:

python3 ./bin/abc.py --log_file ./web/prr.log

现在我需要确保上述进程每 3 小时运行一次。流程如下:

  • 如果进程已经在运行,则终止该进程并休眠 3 小时。
  • 休眠 3 小时后,如果进程没有运行,请通过执行上述 python 命令重新启动进程,然后休眠 3 小时。
  • 重复上述过程。

所以意思是,我需要确保我的进程每隔 3 小时运行一次,所以我需要找到一种方法在每 3 小时后终止该进程。我想在这里使用 watch 命令,但不确定如何在这里使用它。我正在使用 Ubuntu 14。

注意:我无法修改 python 脚本,因此我需要从外部执行此操作。

最佳答案

这似乎是 crontab 的理想用例。我会编写 2 个 bash 脚本,通过 cron 每 3 小时运行一次。所以像下面这样:

#ScriptA.sh
ifProcessRunning
KillProcess

#ScriptB.sh
ifProcessNotRunning
StartProcess

#CronTab
0,6,12,18 * * * * ScriptA.sh
3,9,15,21 * * * * ScriptB.sh

要终止进程,您可以使用任何普通的 unix 命令,因此通过管道传输 ps aux 并在 shell 脚本中运行kill 就可以了。

希望这对您有所帮助——如果您希望我进一步充实内容,请发表评论!

关于python - 每隔 x 小时运行一个进程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47424885/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com