Chinaunix首页 | 论坛 | 博客
  • 博客访问: 106251
  • 博文数量: 28
  • 博客积分: 2010
  • 博客等级: 大尉
  • 技术积分: 300
  • 用 户 组: 普通用户
  • 注册时间: 2009-07-10 09:48
文章分类

全部博文(28)

文章存档

2010年(1)

2009年(27)

我的朋友

分类: LINUX

2009-07-10 10:12:10

一、仅进行一次的工作计划∶ at
首先需要启动atd服务:[root@linux ~]# /etc/init.d/atd restart
设置成为自动启动:[root@linux ~]# chkconfig --level 35 atd on
1)可以利用/etc/at.deny或者/etc/at.allow来限制使用at的用户。redhat el4预设也是只有 /etc/at.deny 存在,而且该档案内并未有任何帐号资料!这表示任何人均可使用 at 啦!不过,万一你不希望有某些使用者使用 at 的话,将那个使用者的帐号写入 /etc/at.deny 即可! 一个帐号写一行。
2)利用at写入工作计划任务时,默认保存在/var/spool/at 目录下
3)at的命令写法 范例一∶再过五分钟后,将 /root/.bashrc 寄给 zwtzwt 这个使用者
[root@redhat74 cron.daily]# at now + 5 minutes
at> /bin/mail zwtzwt < /root/.bashrc
at> <==这里输入 [ctrl] + d 就会出现 的字样!代表结束
job 3 at 2008-09-26 17:29
范例二∶由于机房预计于 2005/09/16 停电,我想要在 2005/09/15 23:00 关机? root@linux ~]# at 23:00 2008-09-26[
at> /bin/sync
at> /bin/sync
at> /sbin/shutdown -h now
at>
job 10 at 2008-09-26 23:00
# 您瞧瞧! at 还可以在一个工作内输入多个指令呢!不错吧!
root@linux ~]# at [-m] TIME 参数∶
-m ∶当 at 的工作完成后,以 email 的方式通知使用者该工作已完成。
4)查询at任务列表atq
5)删除at任务列表atrm
­
二、制定循环执行的计划任务:crontab
系统服务:cron
同样为安全性考虑。可以设定/etc/cron.allow和/etc/cron.deny
1)当使用crontab来制定工作计划任务时,工作计划任务是被创建到/var/spool/cron目录下。
2)当crontab制定的工作计划执行后,执行记录记录在/var/log/cron这个目录下
3)crontab命令使用语法:
3.1 [dmtsai@linux ~]$ crontab -e
# 此时会进入 vi 的编辑画面让您编辑工作!注意到,每项工作都是一行。
0 12 * * * mail zwtzwt -s "at 12:00" < /home/zwtzwt/.bashrc
#分 时 日 月 周 |<==============指令串========================>|
编辑完毕之后,输入:wq 储存后离开 vi 就可以了!
再例如: */5 * * * * /home/zwtzwt/test.sh
3.2 查询工作计划清单[dmtsai@linux ~]$ crontab -l# 注意,若仅想要移除一项工作而已的话,必须要用 crontab -e 去编辑删除对应的行即可~# 如果想要全部的工作都移除,才使用 crontab -r 喔![root@linux ~]$ crontab -r[root@linux ~]$ crontab -lno crontab for root
4、crontab -e 命令是使用者制定工作计划使用的,那么系统自己的循环工作任务呢,只需要编辑/etc/crontab这文件即可。
注意:crontab -e执行的是/usr/bin/crontab这个命令。而/etc/crontab则是纯文本文档,我们可以用root来编辑它
[root@redhat74 ~]# cat /etc/crontab
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
HOME=/
# run-parts
01 * * * * root run-parts /etc/cron.hourly
02 4 * * * root run-parts /etc/cron.daily
22 4 * * 0 root run-parts /etc/cron.weekly
42 4 1 * * root run-parts /etc/cron.monthly
我们可以看到,系统预设了这四个目录了!比如你可以将每天需要执行的命令直接写到 /etc/cron.daily/ 即可,还不需要使用到 crontab -e 的程式!。
具体更详细的at和crontab命令语法可参考手册
阅读(546) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~