我有一个每分钟运行一次的cron 作业
。有时,如果 cron 运行超过一分钟,则会实例化另一个 cron 作业来执行相同的任务。因此创建了重复的 cron 作业,这不是我想要的。我想有条件地检查是否正在运行特定任务的 cron,等到 cron job
完成或跳过创建新的 cron job
直到现有 cron 完成。
最佳答案
在某个地方创建一个文本文件来存储一个值。 (例如 0 或 1)当任务执行时,将值更改为 1。在 cron 作业中,添加一个检查,如果文件中的值为 1,则不执行该作业。任务完成后,请记住将值切换回默认值(例如 0)。
您甚至可以在任务开始时创建一个文件,并在任务结束时删除该文件,并且仅在文件不存在时才执行 cron 作业。
您甚至可以将检查放在任务本身中,而不是弄乱您的 cron 表
关于linux - 为同一任务运行多个 cron 作业,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16812080/