在 crontab 中,除了常规的时间字段外,还有一些特殊字符用于更灵活地定义计划任务。以下是 crontab 中常用的特殊字符及其用途:
*(星号)
作用:匹配所有可能的值(通配符)。
示例:
* * * * * → 每分钟执行0 * * * * → 每小时的 0 分执行(每小时一次),(逗号)
作用:分隔多个值。
示例:
0 8,12,18 * * * → 每天 8:00、12:00、18:00 执行-(连字符)
作用:指定一个连续的范围。
示例:
0 9-17 * * * → 每天 9:00 到 17:00 的每小时整点执行/(斜杠)
作用:指定步长(间隔频率)。
示例:
*/5 * * * * → 每 5 分钟执行一次0 */2 * * * → 每 2 小时的整点执行@ 符号(快捷关键字)@reboot → 系统启动时执行@daily 或 @midnight → 每天 00:00 执行@hourly → 每小时的 0 分执行@weekly → 每周日 00:00 执行@monthly → 每月 1 日 00:00 执行@yearly 或 @annually → 每年 1 月 1 日 00:00 执行0 4,12 */3 6-9 * → 每年 6-9 月的每 3 天的 4:00 和 12:00 执行0 0-8/2 * * * → 每天 0:00 到 8:00 之间,每 2 小时执行一次(0:00, 2:00, 4:00, 6:00, 8:00)系统差异:
@ 开头的快捷关键字并非所有 cron 实现都支持(如旧版本 cron 可能无效)。%)在命令部分可能需要转义(如 \%)。字段范围:
调试工具:
crontab -e 编辑任务前,可通过 Crontab Guru 在线工具验证表达式。通过合理组合这些特殊字符,可以高效地定义复杂的定时任务。如果有具体场景需求,可以进一步优化表达式!