运行Cron工作

时间:2009-05-28 18:29:36

标签: php cron

如果我有一个每10分钟运行一次的cron作业,并且由于某种原因这一次需要12分钟才能运行该作业,那么cron会启动另一个代码实例而前一个代码仍在运行吗?如果是这样,你怎么能在linux上阻止它?

2 个答案:

答案 0 :(得分:10)

是的,它会。

您应该让程序创建一个.pid文件(例如在/ var / run /中)。当它启动时,它应该检查这样的文件是否已经存在,如果是,则退出。

您正在运行哪个程序/脚本?

答案 1 :(得分:3)

是。无论前一个进程是否完成,Cron都会按计划的时间间隔启动进程。

您可以touch一个文件,如另一个答案中所述,并在参与您的流程之前检查其存在。

或者您可以检查进程列表以查看“实例”是否已在运行:

ps -ef | grep *your_script_name* | grep -v grep | wc -l