温馨提示×

debian crontab格式是什么

小樊
40
2026-10-25 18:55:42
栏目: 智能运维

在 Debian(以及所有类 Unix 系统)中,crontab 使用的是 标准 Vixie cron 格式。下面详细说明。


一、crontab 基本格式

每一行代表一个定时任务,格式如下:

* * * * *  command_to_execute
│ │ │ │ │
│ │ │ │ │
│ │ │ │ └── 星期几 (0–7,0和7都代表周日)
│ │ │ └──── 月份 (1–12)
│ │ └────── 日期 (1–31)
│ └──────── 小时 (0–23)
└────────── 分钟 (0–59)

示例

30 2 * * * /usr/bin/backup.sh

表示:每天凌晨 2:30 执行 backup.sh


二、特殊符号说明

符号 含义
* 任意值
, 多个值,如 1,15
- 范围,如 9-17
/ 步长,如 */5 每 5 分钟

示例

*/10 * * * *   # 每 10 分钟
0 9-18 * * 1-5 # 工作日 9 点到 18 点整

三、用户 crontab 与系统 crontab 区别

1️⃣ 用户 crontab(常用)

crontab -e      # 编辑当前用户
crontab -l      # 查看
crontab -r      # 删除

格式中没有用户字段


2️⃣ 系统 crontab

文件位置:

/etc/crontab
/etc/cron.d/*

格式 多一个用户字段:

* * * * *  root  /usr/bin/echo hello

四、cron 特殊时间宏(Debian 支持)

@reboot    # 开机时执行
@yearly    # 每年
@monthly   # 每月
@weekly    # 每周
@daily     # 每天
@hourly    # 每小时

示例:

@reboot /usr/local/bin/init.sh

五、环境变量注意(Debian 常见坑)

cron 默认 PATH 很小:

PATH=/usr/bin:/bin

✅ 建议:

  • 使用 绝对路径
  • 或在 crontab 里指定:
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

六、日志查看(Debian)

sudo tail -f /var/log/syslog | grep cron

如果你愿意,可以告诉我:

  • 你是 用户级还是系统级
  • 想实现什么定时任务(比如每天备份、重启执行)

我可以帮你直接写完整 crontab 示例。

0 踩