CRON TAB中*/15正常运行,12/15无法生效的问题求助
解决Cron表达式
12/15 16 * * *不生效问题 问题根源
标准Cron实现(如Linux系统默认的Vixie Cron)仅支持两种步长(/)语法:
- 搭配通配符
*:例如*/15表示每15分钟执行一次 - 搭配时间范围:例如
0-45/15表示在0-45分钟区间内每15分钟执行一次
12/15这种「起始值+步长」的写法属于非标准扩展语法,多数主流Cron环境不兼容,因此会导致任务无法触发。
替代方案
根据你的需求,将非标准表达式替换为标准写法:
若需求是16点的12分、27分、42分执行任务(对应12/15的预期逻辑)
直接枚举目标分钟数:
12,27,42 16 * * * setup.sh
若需求是仅在16点的第15分钟执行任务(可能表达式输入有误)
直接指定固定分钟:
15 16 * * * setup.sh
验证方式
修改后通过crontab -e保存配置,随后可查看系统日志确认任务触发情况:
- Debian/Ubuntu系统:
grep CRON /var/log/syslog - RHEL/CentOS系统:
grep CRON /var/log/cron
内容的提问来源于stack exchange,提问作者Rohit Patel
相关产品推荐
相关产品推荐

