标签:
1、定义:指根据设定的时间自动执行规定的程序;
2、两种方式:(1)例行性的,每隔一定的周期要来办的事项;
(2)突发性的,这次做完以后就没有的那一种,例如计算机大降价等;
3、使用指令:(1)at:处理仅执行一次就结束排程的指令。
a.执行前提是必须有服务atd支持:
/etc/init.d/atd status 查看状态
/etc/init.d/atd start 开启服务
/etc/init.d/atd stop 关闭服务
/etc/init.d/atd restart 重启服务
chkconfig atd on **设置开机启动
b.at的运作方式:执行at指令后,这个工作以文本的指令方式写入/var/spool/at/,等待atd服务取用或执行。
c.安全考虑,并不是所有人都是at工作排程,除非你认可的账号。具体列管可利用/etc/at.allow和/etc/at.deny两个档案,如果/etc/at.allow不存在。
/etc/at.allow 写在这个档案中的使用者才可使用at
/etc/at.deny 写在这个档案中的使用者不可以使用at
d.实际运作:
eg. 使用:
例1:
at now +5minutes
at>/bin/mail root -s "testing at job" < /root/.bashrc //执行文件
at> <EOF> //Ctrl + D
例2:
at now +5minutes
at>echo "Hello" > /dev/tty1 //可以在终端机上看到显示,如果不加则需要到mailbox中查看
查看:at -l 等价于 atq
删除:at -d 等价于 atrm //取消一个在at排程中的工作
e.batch:系统有空才进行的背景任务,利用at进行指令下达。
例如:机房停电在 2009/3/17 23:00 关机,但若当时系统负载太高,则暂缓执行,操作如下:
batch 23:00 2009-3-17
at> sync
at> sync
at> shutdown -h now
at> <EOT>
job 6 at 2009-03-17 23:00
f.at有点:
1.脱机继续工作的任务 ==> 联机后下达at命令就立刻脱机,直接交给系统的atd服务程序来接管,免除断网困扰。
2.某个突发事件导致你必须要进行某项工作时这个at就很好用了。
(2)crontab:设定的工作将会一直循环进行,循环时间为分钟、小时、每周、每月或每年。注意:除了使用指令外,亦可编辑/etc/crontab支持。
正在整理中。。。。
标签:
原文地址:http://my.oschina.net/lisn/blog/484176