我有一个每隔一分钟执行一次的 cronjob,通常在几秒钟内运行,但有时会持续几分钟。
如果下一分钟到来时命令已经在运行,我需要 cron 不执行该命令。
该线看起来像这样
*/1 * * * * cmd
我试过这个
* * * * * ID=job1 FREQ=1m AFTER=job1 cmd
但没有成功。
是否可以用 cron 解决或者我必须实施锁定?
您可以创建一个名为 inProgress (或其他)的临时文件,并将其存储在标准位置,并使用它来与下一个作业进行通信(如果它应该运行或不运行)。
如果工作流程是这样的怎么办:
- 检查标准正在进行中
文件
- 如果存在则退出
- 否则,创建 inProgress 文件
- Do work
- 删除正在进行的文件。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)