at定时任务(超详细)
今天我们来学习一下at定时任务,它跟Crond有一些区别,两者都是有关定时调度,但是调取次数有所差异,对此,我们应该进行区分.
at定时任务
基本介绍
1.at命令是一次性定时计划任务,at的守护进程以后台模式运行,检查作业队列来运行.
2.默认情况下,atd守护进程每60秒格查作业队列,有作业时,令检查作业运行时间,如果时间和当前时间匹配,对运行此作业.
3.at命令是一次性定时计划任务,执行完一个任务后不再执行此任务了.
4.在使用at命令的时候,一定要保证atd进程的启动,可以使用相关指今来查看.
ps -ef 检测当前所有正在运行的进程
ps -ef I grep atd 检测atd是否在运行
5.原理图
at命令
at[选项][时间]
Cirl+D 结束at命令的输入.(输入2次,一次终止at指令输入,一次退出at)
at时间定义
at指定时间的方法:
1、接受在当天的hh:mm(小时:分钟)式的时间指定,假如该时间已经过去,那么就放在第二天执行。例如:04:00
2.使用midnight(深夜),noon(中午),teatime(饮茶时间,一般是下午4点)等比较模糊的词语来指定时间.
3.采用12小时计时制,即在时间后面加上AM(上午)或PM(下午)来说明是上午还是下午,例如12pm
4.指定命令执行的具体日期,指定格式为month day(月 日)或 mm/dd/yy (月/日/年)或dd.mm.yy(日.月.年),指定的日期必须跟在指定时间的后面.例如04:00 2021-03-01
5、使用相对计时法。
指定格式为:now+count time -units, now就是当前时间,time-units是时间单位,这里能够是minutes(分钟),hours(小时),days(天),weeks(星期)。count是时间的数量,几天,几小时,例如 now +5minutes
6.直接使用today(今天),tomorrow(明天)来指定完成命令的时间
案例演示:
atq查看系统中有无执行的工作任务:
atrm 编号 删除已经设置的任务:
at命令选项:
⭐️参数前要加- 如 -m
好了,今天分享就到这里,谢谢大家!!!