计划任务学习笔记

1.            at    一次性计划任务,即只运行一次
[root@www ~]# at now +5 minutes      #从现在起5分钟后执行
at> /usr/bin/wall < /etc/motd      #命令写绝对路径!
at> <EOT>                    #ctrl+d 保存退出
job 2 at 2011-04-25 18:47
任务查询与删除
查询 at –l 或者atq 
删除 atrm
如果要运行脚本的话使用-f选项,如 at now +5 minutes –f at.sh
2.            at的配置文件
默认情况下计划任务都是放在/var/spool/at/这个文件
/etc/at.allow   被允许使用计划任务的用户
/etc/at.deny     被拒绝使用计划任务的用户
#一般情况下这两个文件存在一个即可。如果只有少数几个用户需要使用计划任务,那么就保留at.allow文件,如果大部分用户都要使用计划任务,那么保留at.deny即可。
at任务执行后的输出都是通过向用户发送邮件,即使任务执行后没有stdout输出。
例如:
[ila@www mail]$ at now +1 minutes
at> /bin/echo 'hello world!'
at> <EOT>
这个计划任务的输出不会在屏幕上显示,而是将输出写进发给ila的邮件中。如果使用wall的话会在屏幕上有输出同时也会收到邮件。
3.            batch 安排一个或多个任务在系统负载较轻的时候运行
4.            crontab    周期性计划任务
ctontab –e 计入编写
分钟 小时 天 月 星期 命令/脚本
把知道的具体时间填上,不知道的都填*;命令都需要写绝对路径!
用crontab创建的计划任务存储在/var/spool/cron下面的一个子目录中,这个子目录的与创建crontab的用户同名。除此之外,cron还会检查/etc/crontab文件和/etc/cron.d目录中的文件。这两个档案与检查计划任务有关。
查看计划任务的话使用crontab –l
例如:
0 4 * * * xx    每天凌晨四点执行
0 18 * * 2,5 xx 每周2和周5的下午六点执行,如果是连续时间的话可以用-,如2-5
*/2 * * * xx     每隔两分钟执行一次