cron 定时任务:语法、字段与系统级配置

一、crontab 基本

crontab -e   # 编辑当前用户定时任务
crontab -l   # 列出
crontab -r   # 删除全部(慎用)

二、五个时间字段

分 时 日 月 周,例如:

表达式 含义
*/5 * * * * 每 5 分钟
0 2 * * * 每天凌晨 2 点
0 0 1 * * 每月 1 号零点
0 9 * * 1 每周一 9 点

三、特殊符号

  • * 任意;, 列举(如 1,15);
  • - 区间(如 9-18);/ 步长(如 */10 每 10);
  • @daily/@reboot 等宏可用。

四、系统级配置

/etc/crontab 与 /etc/cron.d/ 是系统级任务,格式多一个”用户”字段;/etc/cron.hourly|daily|weekly|monthly 放脚本自动按时跑。

注意 cron 的 PATH 很精简,脚本里命令建议写绝对路径,或在 crontab 顶部设 PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin。