任务计划:在未来的某个时间自动执行一个命令或一个脚本完成某项任务,例如可以在每天的半夜十二点关机,在每天的凌晨两点备份文件等等。
<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

1、
#at   --
在未来的某个时间仅执行一次;

-l –
查看任务队列;

-r Job_num—
删除未来的一任务;

-f FILE TIME –
从一文件中读取命令;

at
命令的时间表示法:

       HH:MM[  AM | PM  ]

       MM/DD/YY

       now+#(minutes | hours)

ctrl + d –
提交任务

任务执行结果会以邮件的形式发给任务的发起者;

#batch –
用法和
at
命令差不多,特别之处是
batch
不用指定时间,它会选择系统空闲的时候,执行任务;

 

2、
在未来周期性的去执行一个任务;

使用
#crontab
#anacron

crontab
anacron
的区别是
crontab
,当任务定义的时间点过去后,就不再执行;
anacron
则是检查
crontab
中的时间列表看有无曾经应该执行而没有执行的任务。

crontab

crontab
需要一个服务
—crond
支持,只有开启
crond
服务,
crontab
定义的计划任务才会有效。

crontab
定义任务分两类:

1、
用户定义的任务
存放在
/var/spool/cron/
下一个与用户名同名的文件;

2、
系统定义的任务
存放在
/etc/crontab(
与用户定义任务格式的区别是系统任务得指定执行任务的用户。
)

时间格式:

     
    
  
  
星期

0-59    0-23   1-31  1-12   0-7
0
7
都表示星期日)

符号:

* --
表任何时候;

--
表非连续时间点

-         
--
表连续的时间点

*/# --
每隔多长时间

 

#crontab
的使用

       -e –
编辑任务

       -l –
列出自己的任务计划;

       -r –
删除所有任务计划;

       -u  USERNAME –
为用户制定任务计划

注:在
crontab
中执行脚本。脚本中最好先声明
PATH
变量,确保脚本中的命令能够执行。

eg
01 3 * * * /bin/tar –jcf /backup/etc-`date +%F`.tar.bz2  /etc –
在每天的凌晨
3
1
分备份
/etc
目录下的所有内容。

 #anacron

      
配置文件为
/etc/anacrontab

# /etc/anacrontab: configuration file for anacron

 

# See anacron(8) and anacrontab(5) for details.

 

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
分钟执行该任务;

eg: 01 8  *  *  * /sbin/hwclock  –s  --
在每天的
8:01
BIOS
中的时间写入系统时间。