我希望我的脚本每 23 号左右运行一次(即晚上 11 点),并在 7 点至 19 点之间每 2 小时运行一次。在 directadmin 中我使用以下命令:
23,7-19/2
然而,在 crontab 中它将每分钟运行一次。我应该使用什么语法?我的完整行:
* 23,7-19/2 * * * /usr/local/bin/php script.php
答案1
CRON 的关键点在于,只要当前时间与指定的模式匹配,它就会运行。因此,有了所有这些 *,很多时间都会匹配。
但是我无法理解您试图描述的具体时间,所以我无法给您提供可行的确切配置。
答案2
0 7,9,11,13,15,17,19 23 * * /usr/local/bin/php script.php
将在每 23 日 7 点到 19 点之间每隔一个整点准确运行脚本。但我不确定这是否是您想要执行的操作。
另一种解释是,您希望每天在 7 点至 19 点之间以及 23 点运行它。然后将其更改为
0 7,9,11,13,15,17,19,23 * * * /usr/local/bin/php script.php
crontab 的六个字段是
min hour dayofmonth month dayofweek command