简介
Linux任务计划分为周期性计划任务和非周期性计划任务两种。
周期性任务,通常使用crontab来配置。
非周期性任务,通常使用at
来实现。
crontab
crontab的使用在《crontab参数详解》中已有详细说明,这里就不再累述。
at
at
命令意为稍后执行,即在指定时间点执行指定任务,命令执行结果以邮件发送给提交作业的用户。
注意:要保证atd
服务正常运行,at
的配置才会生效。
at [OPTION]... TIME
TIME:
HH:MM [YYYY-mm-dd]
noon,midnight, teatime
tomorrow
now+UNIT
UNIT:minutes, hours, days, OR weeks
常用选项:
-l:查看作业队列,相当于atq;
-f /PATH/FROM/SOMEFILE:从指定文件中读取作业任务,而不用再交互式输入;
-d:删除指定的作业,相当于atrm;
-b:空闲时执行,相当于batch;
-c:查看指定作业的具体内容,可查看作业所使用的变量及环境信息;
-q QUEUE:指明队列,单个字母表示,默认使用a队列;
# 默认为从标准输入交互式输入,使用 Ctrl+D 结束输入并生效。
at -b
命令意为空闲时执行(相当于batch
),即让系统自行选择在系统资源较空闲(默认为平均负载小于0.8
的时候)的时间去执行指定的任务。