任务计划:
1、在未来的某个时间点执行一次某任务
at
batch
at 时间
at> COMMAND
at >COMMAND
at > Ctrl+d
指定时间:
绝对时间:HH:MM DD.MM.YY MM/DD/YY
相对时间:now+#
单位:minutes,hours,days,weeks
模糊时间:noon,midnight,teatime
命令的执行结果将以邮件的形式发送给安排任务的用户
at -l :显示作业=atq
at -d AT_JOB_ID :删除作业=atrm AT_JOB_ID
2、周期性的执行某任务
cron:自身是一个不间断运行的服务
anacron:cron的补充,能够实现让cron因为各种原因在过去的时间该执行而未执行的任务在系统恢复正常时执行一次;
cron:
系统cron任务
/etc/crontab
分钟 小时 天 月 周 用户 任务
用户cron任务
/var/spool/cron/USERNAME
分钟 小时 天 月 周 任务
时间的有效取值:
分钟:0-59
小时:0-23
天:1-31
月:1-12
周:0-7,0和7都代表周日
时间通配表示:
*:对应的所有有效取值
3 * * * *
3 * * * 7
13 12 6 7 *
,:离散时间点
10,40 02 * * 2,5
- :连续时间点
10 02 * * 1-5
/# :对应取值范围每多久一次
*/3 * * * *
每两小时执行一次:
08 */2 * * *
没两天执行一次:
02 01 */2 * *
执行结果将以邮件形式发送给管理员:
*/3 * * * * /bin/cat /etc/fstab &> /dev/null
cron的环境变量 : cron执行所有命令都去PATH环境变量指定的路径下去找
PATH /bin:/sbin:/usr/bin:/usr/sbin
用户任务的管理:
crontab:
-l:列出当前用户的所有cron任务
-e:编辑
-r:移除所有任务
-u USERNAME:管理其他用户的cron任务
anacron:补充cron,服务器一般不用。