Linux之计划任务管理

环境
Windows11、VMware Workstation 16.2.2
系统
Red hat7.4
说明
笔记整理
部署
at命令
at命令制定一次性执行的计划任务⤵
at [选项] [执行任务的时间] [执行任务的日期]
选项:
- -m 当at工作完成后,即使没有输出信息,也会以mail通知用户工作已完成
- -l 显示当前正在等待执行的计划任务队列
- -d 任务编号,删除指定编号且尚未执行的计划任务
时间指定方式有:
- 绝对时间——HH:MM[am|pm] :如 5:30pm、17:30
- 相对时间——now+count time-units:其中,now就是当前时间;count是时间的数量;time-units是时间单位,如minutes(分钟)、hours(小时)、days(天)、weeks(星期)。如“now+3min”表示当前系统的3分钟后
- 模糊词语:如midnight(深夜),noon(中午),teatime(饮茶时间,一般是下午四点)等。
由于at命令依赖于atd服务,所以首先要确认系统服务atd已经启动,并开机自启:⤵
[root@jw2031-122 ~]# systemctl is-active atdactive[root@jw2031-122 ~]# systemctl is-enabled atdenabled
使用at命令设置一次性计划任务:⤵
[root@jw2031-122 ~]# at now+2minat> echo "zhang" >>/tmp/date.txt #输入要执行的命令并回车at> <EOT>job 2 at Sun Apr 17 19:38:00 2022[root@jw2031-122 ~]# at 23:00at> systemctl poweroff #设置在当天17:30自动关闭系统at> <EOT> #CTRL+D提交退出job 3 at Sun Apr 17 23:00:00 2022[root@jw2031-122 ~]# atq #查看对已设置但还未执行的计划任务
[root@jw2031-122 ~]# atrm 3 #删除任务编号为3的计划任务
crontab命令
使用crontab命令制定周期性执行的计划任务⤵
crontab [选项]
常用选项:
- -e #针对当前用户或指定用户编辑计划
- -u #用户名,指定执行计划任务的用户。
- -l #显示当前用户或指定用户的计划任务
- -r #删除当前用户或指定用户的计划任务
crontab命令编辑格式:









