Cron 在特定时间后停止工作

Cron 在特定时间后停止工作

我使用 cron 在白天每 15 分钟执行一个 python 脚本。在夜间,它应该每小时运行一次。

我为此做了 2 个条目:

0 23-5 * * * python /var/www/script.py > /dev/null 2>&1
*/15 6-22 * * * python /var/www/script.py >/dev/null 2>&1

白天运行的那个效果很好。这是 /var/log/syslog 中该脚本的最后一个条目:

Jan 26 22:45:01 web CRON[20278]: (sysadmin) CMD (python /var/www/script.py > /dev/null 2>&1)

但 23:00 之后该脚本没有条目。该脚本的下一个条目是:

Jan 27 06:00:01 web CRON[26367]: (sysadmin) CMD (python /var/www/script.py > /dev/null 2>&1)

这就是“day-cron”条目再次开始。这两个条目都是在用户“sysadmin”的同一个 crontab 中创建的。

知道这里的问题是什么吗?或者我还能去哪里寻找线索?

我正在运行 Ubuntu 16.04.1 LTS - 4.4.0-42-generic。

答案1

更改23-523,0,1,2,3,4,5或者您可以添加两行,如下所示:

0 23 * * * python /var/www/script.py > /dev/null 2>&1
0 0-5 * * * python /var/www/script.py > /dev/null 2>&1

或者就像其他人所说的那样(我忘了你可以混合搭配):

0 23,0-5 * * * python /var/www/script.py > /dev/null 2>&1

之所以?因为23-5不是有效范围。该范围只能是从低值到高值。

相关内容