我正在使用 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。