任务计划:
⑴、在未来的某个时间点执行一次某个任务
命令:
1、 at
at +时间,指定时间点,敲回车,会给一个at提示符,然后输入我们要执行的命令(如:COMMAND),然后会再有一个提示符,填好以后按Ctrl+d结束
指定世间:格式:月日年/日月年
绝对时间:HH:MM,DD.MM.YY,MM/DD/YY
相对时间:now+#,#时间长以后
单位:mintes,hours,days,weeks,
模糊时间:noon,midnight,teatime
例如:
命令的执行结果:将以邮件的形式发送给安排任务的
的用户
at -l 显示自己的作业列表
at -d 作业号=atrm:删除作业
at可以在/etc下创建两个文件:
/etc/at.allow:白名单
/etc/at.deny:黑名单
、
2、batch:自动选择系统较空闲的时刻执行任务
⑵、周期性地执行某任务
1、cron:自身是一个不间断运行的服务
2、anacron:cron的补充,可以实现让cron因为各种原因在
过去的世间安该执行而未执行的任务在恢复正常执行一次
3、cron:
系统cron任务,跟用户没有关系,系统为了周期性的维护某一个任务所安排的
定义文件/etc/crontab
格式:分钟 小时 天 月 周 用户 执行的任务
用户cron任务
定义文件/var/spool/cron/USERNAME
格式:分钟 小时 天 月 周 执行的任务
时间的有效取值:
分钟:0-29
小时:0-23
天:1-31
月:1-12
周:0-7,0和7都表示周日
时间通配表示:
*:对应时间的所有有效取值
fg:3 *:每个小时的第三分钟(1:03/2:03)
3 * * * 7:每周周日的每一小时的第三分钟
13 12 6 7 *:每年的7月6号12点13分
,:离散时间点:
fg:10,40 * * * *:每个小时的第10分钟和第40分钟执行
-:连续时间点
fg:10 02 * * 1-5:每周周1到周5的2点10分执行
/#:对应取值范围内每多久一次
fg:*/3 * * * *:每3分钟执行一次
0 */2 * * *:每2小时执行一次(分钟处时间随意定)
执行结果将以邮件形式发送给管理员:*/3 * * * * /bin/cat /etc/fstab
4、cron的环境变量:cron执行所有命令都去PATH环境变量指定的路径下去找(十分重要,很多人都会在这一点犯错误,注意注意)
PATH=/sbin:/bin:/usr/sbin:/usr/bin
5、用户任务的管理:
crontab -l:列出用户的所有cron任务
crontab -e:新建一个cron任务,可以检查语法错误
crontab -r:删除所有任务
crontab -u USERNAME:管理其他用户cron任务,可以与-r、-e一起使用
6、anacrontab
配置文件:/etc/anacrontab
SHELL=/bin/sh
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
1 65 cron.daily run-parts /etc/cron.daily
7 70 cron.weekly run-parts /etc/cron.weekly
30 75 cron.monthly run-parts /etc/cron.monthly
1:已经有1天没有执行了,65:开机后的第65分钟