1. at 一次性计划任务
使用at定制一次性计划任务前需要确保atd服务是开启的,否则计划任务不会被执行,使用systemctl start atd开启服务,并使用systemctl enable atd 确保该服务开机启动。
格式:at 时间
选项:
-m 当计划任务执行结束后发送邮件给客户。
-l 查看用户计划任务
-d 删除用户计划任务
-c 查看at计划任务具体内容
示例:
[root@localhost 桌面]# at 10:25 //将在当天10点25分执行计划任务
at> mkdir /like //计划任务内容(内容可输入多条)
at> <EOT> //输入完毕后按ctrl+D 快捷键结束
job 1 at Sun May 26 10:25:00 2019 //系统提示有编号为1的计划任务
[root@localhost 桌面]# at -l //查看计划任务
[root@localhost 桌面]# at -c 2 //查看编号为2的计划任务具体内容
[root@localhost 桌面]# at -d 2 //删除编号为2的计划任务
at命令可以使用的时间格式有很多,at 小时:分钟,at 4pm+3days (代表3天后的下午4点执行计划任务),at 12:00 2019-02-18(指定年月日及时间的计划任务)。
2.cron 周期性计划任务
使用cron制定计划任务之前需要确保crond服务是开启的,否则计划任务不会被执行,开启方式同一次性计划任务。
格式:crontab [-u 用户][-l|-r|-e]
选项:
-u 指定计划任务的用户,默认为当前用户
-l 查看计划任务
-r 删除计划任务
-e 编辑计划任务
-i 使用-r删除计划任务时,要求用户确认删除
示例:
[root@localhost 桌面]# crontab -e
23 23 * * 5 tar -czf log.tar.bz2 /var/log //每周五晚23点23分执行日志备份
00 */3 * * * who //每3小时检查用户的登陆情况
00 10 * * 3,5 free |mail -s "Mem" [email protected] //每周三周五10点将系统内存信息发送给自己的邮箱
下表是计划任务内容格式含义
第一列 | 分 |
---|---|
第二列 | 时 |
第三列 | 日 |
第四列 | 月 |
第五列 | 周 |
第六列 | 命令 |
如果你有脚本需要每天执行,可以直接将脚本存放到/etc/cron.daily目录中,系统会自动帮你每天运行该脚本。