如何设置每天08:00和17:00执行的cron job定时任务
每天08:00、17:00执行的Cron配置方案
正确的Cron规则写法如下:
0 8,17 * * * 你的具体执行命令
Cron规则的5个时间位从左到右分别对应分、时、日、月、周,上述规则里0代表整点触发,8,17代表匹配8点和17点两个时间点,后面三个*代表不限制日期、月份、星期,即每天符合时间条件就触发。
常见配置失败排查点
- 环境变量问题:Cron运行时不会加载用户登录后的环境变量配置,所有命令、脚本路径建议写绝对路径。比如执行Python脚本不要写
python3 script.py,应替换为类似/usr/bin/python3 /home/yourname/script.py的完整路径。 - 服务状态问题:先确认Cron服务处于正常运行状态,Debian/Ubuntu系统执行
systemctl status cron,CentOS/RHEL系统执行systemctl status crond,如果显示未运行需要先启动服务。 - 权限问题:确认配置Cron的用户对执行命令、脚本、读写的文件有对应权限,不要用普通用户配置需要root权限才能执行的任务。
- 格式问题:Cron配置文件的最后一条规则末尾必须保留空行,否则最后一条规则不会被识别加载。
- 日志排查:可以给规则追加日志输出,方便定位问题,示例如下:
配置后查看0 8,17 * * * /usr/bin/python3 /home/yourname/script.py >> /var/log/script_cron.log 2>&1/var/log/script_cron.log即可确认是任务未触发,还是执行过程中出现报错。
内容的提问来源于stack exchange,提问作者Orlin Harizanov
相关产品推荐
相关产品推荐

