AI 助教问 AI 助教
东方瑞通 · KYCP

系统定时任务

定时任务分一次性 at 与周期性 crontab,crontab 六字段定义执行时间。

考点精讲

  1. at 执行一次性任务(atd 服务,任务存 /var/spool/at/,at -l 列出、atrm 删除)。crontab 执行周期性任务,配置文件 /etc/crontab,用 crontab -e 编辑、-l 列出、-r 删除。格式六字段:分 时 日 月 周 命令。特殊字符 * 任意、/ 步长、- 范围、, 枚举;Sunday 可用 0 或 7。注意:分字段必须写数值;日和星期不能同时指定;命令要用绝对路径。
  2. 前后置引导:前置:先掌握「服务管理 systemd」(08-进程和服务管理),本页在其基础上展开。;后置:继续学习「网络配置与诊断」(10-网络配置),承接下一知识点。

记忆技巧

crontab 六字段记「分时日月周 命令」;at 是「一次性闹钟」,crontab 是「每天循环的闹钟」。

常见误区

  • crontab 分字段漏写(* 或具体值)导致任务不执行
  • 日和星期同时指定导致逻辑混乱
  • 命令用相对路径导致定时任务找不到命令

真题思路

  • 【示例】 crontab 配置中,每天 22:30 执行任务,其分钟和小时字段应写为?
    22 30 * * * 30 22 * * * 30 22 * * 7 22 30 * * 7
    答案:B
    解析:六字段顺序为「分 时 日 月 周」,故 30 分 22 时写成 30 22 * * *(讲义 09-系统定时任务)。

常见问题

Q:at 和 crontab 的区别?

A:at 执行一次性任务,crontab 执行周期性重复任务。(解析:两种定时方式。)

Q:crontab 六字段分别是什么?

A:分、时、日、月、周、命令。(解析:字段顺序。)

Q:crontab 中 / 表示什么?

A:步长,如 */5 表示每 5 个单位。(解析:特殊字符。)

Q:为什么定时任务命令要写绝对路径?

A:cron 环境变量少,写绝对路径避免找不到命令。(解析:实战注意点。)

相关知识

教材出处:09-系统定时任务 系统定时任务

AI 助教

让 AI 助教带你深入学习,把你卡住的地方直接问它

随时为您答疑解惑

开始答疑