at
# 查看atd服务是否启动,如果没有启动服务,atd是at服务的脚本文件
[root@localhost /]# chkconfig --list | grep atd
atd 0:off 1:off 2:off 3:on 4:on 5:on 6:off
[root@localhost /]# /etc/init.d/atd start
# 使用ps查看atd是否启动成功
[root@localhost /]# ps -eaf | grep atd | grep -v grep
root 9581 1 0 11:48 ? 00:00:00 /usr/sbin/atd
# at 后加时间,然后在at> 提示符下输入命令,按ctrl+d退出
[root@localhost ~]# at 12:59
at> echo "now is 12:59" >>file
at> # 按ctrl+d
job 4 at 2011-10-15 12:59
[root@localhost ~]# at 13:00
at> echo "now is 13:00"
at>
job 5 at 2011-10-15 13:00
# atq 查看计划任务
[root@localhost ~]# atq
5 2011-10-15 13:00 a root
4 2011-10-15 12:59 a root
# 删除某个计划任务,使用atrm n (n为任务编号)
[root@localhost ~]# atrm 5
[root@localhost ~]# atq
4 2011-10-15 12:59 a root
/etc/at.deny 文件中保存的是禁止哪些用户使用at命令
/etc/at.allow 文件中保存的是允许哪些用户使用at命令,系统默认是所有用户都可以执行at命令
如果at.allow存在,系统会先检查该文件,后检查at.deny文件
batch
用法与at类似,不同在于,batch执行的任务只有在系统负载小于0.8%时任务才会执行
crontab
可指定时间并周期性循环执行,应用更为广泛~
# 启动服务,并查看
[root@localhost ~]# /etc/init.d/crond start
Starting crond: [ OK ]
[root@localhost ~]# ps -eaf | grep cron | grep -v grep
root 12267 1 0 13:12 ? 00:00:00 crond
# crontab 加 -e 参数就可以向crontab提交 任务####
[root@localhost ~]# crontab -e
no crontab for root - using an empty one
crontab: installing new crontab
# 第一个* 表每分钟,范围0~59,如10 表第10分钟执行
# 第二个* 表每小时,范围0~23,即24h
# 第三个* 表每天,范围1~31
# 第四个* 表每月,范围1~12,也可使用英文缩写
# 第五个* 表每周的星期,范围0~7,0 、7都表示周日,也可使用英文缩写
# - 用于指定范围, / 表示时间段
# 如 5,10 0-13/2 * * 1-5 表每周一到周五,在0-13h间每隔两小时,并在那小时的第五和第十分钟执行计划任务
# 之后就是脚本命令
* * * * * echo "hello" > file
# 参数 -l 查看计划任务 ,参数 -r 删除自身建立的所有任务
[root@localhost ~]# crontab -l
* * * * * echo "hello" > file
# crontab 后可加文件,文件里写需要执行的计划任务
[root@localhost ~]# cat > file<> * * * * * echo "file">fileR
> !
[root@localhost ~]# cat file
* * * * * echo "file">fileR
[root@localhost ~]# crontab file
[root@localhost ~]# crontab -l
* * * * * echo "file">fileR
同样,在/etc 下也有cron.allow 和 cron.deny,用法与at相同
anacron
# 与crontab基本相同,不同在于anacron不是准时执行,而是在规定周期内,系统负载较低时才会执行
配置文件为/etc/anacrontab
阅读(1228) | 评论(0) | 转发(0) |