计划任务分为一次性计划任务与长期性计划任务,大家可以按照如下方式理解。

  • 一次性计划任务:任务只需执行一次,使用`at`命令实现。例如:今晚11点30分开启网站服务。
  • 长期性计划任务:执行周期性的具体任务,crond服务来实现,命令是`crontab`.例如:每周一的凌晨3点25分把/home/wwwroot目录打包备份为backup.tar.gz。

 

 

at命令,at命令采用交互式的方法

at <时间> 设定命令的时间,随后就要输入命令内容   Ctrl + D 结束编写命令
at -l     查看未执行的一次性任务
at -c <任务序列号> 查看对应序号的任务详情
atrm <任务序列号>  删除对应序号的任务

 

 

crontab命令,该命令会自动调用vim编辑器

crontab -e     创建、编写计划任务
crontab -l     查看当前的计划任务
crontab -r     删除计划任务
crontab -u     编写他人的计划任务内容

关于计划任务的编写规则,字段顺序为

分 时 日 月 星期 命令

#每星期135的1点钟,自动将/home/wwwroot目录文件归档压缩为backup.tar.gz
0 1 * * 1,3,5 /usr/bin/tar -czvf backup.tar.gz /home/wwwroot

尤其要注意的是:

  1. 命令需要是绝对路径的形式,可以使用whereis查询命令的路径
  2. 计划任务中分字段不能为空 或者是 * 占位
  3. 字段 日 和 星期 不能同时指定,否者会发生冲突

 

参考:https://www.linuxprobe.com/chapter-04.html#44