Cron 仅运行 crontab 中的最新条目

Cron 仅运行 crontab 中的最新条目

我正在使用 PHP(www-data用户)将条目记录到 crontab 中。第一个条目是每分钟运行一次的调度程序。如果调度程序找到特定条件,它会将新条目添加到 crontab。在我添加条目后,调度程序(应该每分钟运行一次)停止工作。cron 作业不是并行运行的。就像用户www-data只能执行单个 cron 作业一样。

我的调度程序,当它是 crontab 中唯一的东西时就可以工作:

* * * * * curl --silent http://myapi_url/scheduler >/dev/null 2>&1

当调度程序运行时,它会添加一个新条目:

18-59/2 * * * * curl --silent http://myapi_url/user/10 >/dev/null2>&1`

因此,新条目有效,但调度程序停止工作。如果我再添加一个新条目,之前添加的两个条目会停止工作,但新条目不会。为什么?

编辑:

crontab 如下所示:

* * * * * curl --silent http://myapi_url/scheduler >/dev/null 2>&1 
18-59/2 * * * * curl --silent http://myapi_url/user/10 >/dev/null 2>&1

每个新条目都如下所示。

答案1

我发现了问题。在写入 Crontab 时,我错误地使用了换行符,因此在条目末尾记录了一个 ^M。

相关内容