1、at

at命令主要实现一次性的计划任务。

#at -f script 8:20 am December 7            //127号的8:20执行某脚本

#at now+5minutes                            //5分钟后执行

>free          

>ctrl+d                                     //ctrl+d结束输入

#at midnight+5minutes                       //午夜过后的5分钟

>echo 'hello'|mail -s "test mail" kevin@stationX.example.com

>ctrl+d

#atq                                        //查询at队列

#at -c 1                                    //查询指定的at作业详情

#at -l                                      //查询at队列

#at -r 1                                    //清除at任务

#at -m                                      //作业完成给用户发送邮件

2、crontab

crontab完成周期性执行的任务。

#crontab -e -u kevin                        //为用户kevin设置周期性任务

#crontab -e                                 //为当前登录用户设置周期性任务

各字段说明

分钟

0-59

*(任意分钟)、[1-5]1~5分钟)、1,5,7(第1,5,7分钟)

小时

0-23

同上

日期

1-31

同上

月份

1-12

同上

星期

0-7

0/7都是指周日,其它同上

执行任务

脚本的绝对路径

/bin/tar rf  backup_opt.tar /opt/*

#crontab -l                                 //查看crontab任务列表

#crontab -r                                 //删除当前提交的crontab任务列表

任何用户提交的crontab作业都保存在/var/spool/cron目录下。

系统crontab文件

#cat /etc/crontab

系统cron文件中的run-parts命令用于执行指定目录下的脚本。run-parts本身是个shell脚本,位于 /usr/bin目录下。

/etc/cron.hourly                        //每小时自动执行的任务

/etc/cron.dally                         //每天自动执行的任务

/etc/cron.weekly                        //每周自动执行的任务

/etc/cron.monthly                       //每月自动执行的任务

一个特殊的脚本:0anacron

当主机未能正确执行自动化业务时,在下次执行时会优先重新执行。