语法: at 时间
服务:atd 必须开启
<code> 1、[root@xuegod163 ~]</code><code># /etc/init.d/atd status #查看服务状态</code>
<code> 2、atd (pid 2206) is running...</code>
<code> 3、[root@xuegod163 ~]</code><code># /etc/init.d/atd start #启动服务</code>
【例如】
<code> 1、[root@xuegod163 ~]</code><code>#at 20:00 2015-2-23 #创建计划任务在2015年2年23日20:00执行</code>
<code> 2、[root@xuegod163 ~]</code><code>#at now +10min #创建计划任务在十分钟后执行</code>
1.1 at查询
<code> 1、[root@xuegod163 ~]</code><code># at -l #查询当前的计划任务</code>
<code> 2、32015-02-03 20:55 a root</code>
<code> 3、22015-02-23 20:00 a root</code>
<code> 4、[root@xuegod163 ~]</code><code># ll /var/spool/at/* </code>
<code> 5、-rwx------ 1 root root 3842 Feb 3 20:45 </code><code>/var/spool/at/a00002016a5170</code>
<code> 6、-rwx------ 1 root root 3842 Feb 3 20:45 </code><code>/var/spool/at/a000030169e127</code>
<code> 7、PS:执行成功的at计划任务会在该目录下成生一个可执行的脚本文件</code>
1.2 at任务删除
语法:atrm at序列号
1、<code>[root@xuegod163 ~]</code><code># atrm 2</code>
2、Crond周期性计划任务
1、<code>[root@xuegod163 ~]</code><code># vim /etc/crontab</code>
<code> </code>2.2 开启服务
1、<code>[root@xuegod163 ~]</code><code># /etc/init.d/crond status #查看服务状态 </code>
2、<code>crond (pid 2195) is running...</code>
3、<code>[root@xuegod163 ~]</code><code># chkconfig --list crond #查看是否开机启动</code>
4、<code>crond 0:off1:off2:on3:on4:on5:on6:off</code>
5、<code>[root@xuegod163 ~]</code><code># chkconfig crond on #设置服务开机自启动</code>
6、<code>[root@xuegod163 ~]</code><code>#ls /etc/cron* </code>
7、<code>/etc/cron</code><code>.hourly </code><code>/etc/cron</code><code>.daily </code><code>/etc/cron</code><code>.weekly </code><code>/etc/cron</code><code>.monthly</code>
8、<code>PS:对于系统级别的计划任务,需要执行的命令和脚本都放在这里</code>
2.3 针对用户级别的计划任务
对于root用户:
crontab –e #创建
crontab –l #显示
crontab –r #删除
格式:分 时 日 月 周 命令
取值范围:
分:0-59
小时:0-23
日:1-31
月:1-12
周:0-7 (0 和7 都是周日)
2.4 crontab的使用
1、[root@xuegod163 ~]# crontab -e
2、57 20 * * * echo `date` > /tmp/date.txt
3、[root@xuegod163 ~]# date #查询当前时间
4、Tue Feb 3 20:57:11 CST 2015
5、[root@xuegod163 ~]# cat /tmp/date.txt
6、Tue Feb 3 20:57:01 CST 2015
7、【例】 特殊写法
8、#每月9,18,22日的3点1分,开始执行备份脚本
9、1 3 9,18,22 * * /usr/bin/back.sh
10、#每月9-18日,3:00执行
11、0 3 9-18 * * /usr/bin/back.sh
12、#每5分钟,执行一次
13、*/5 * * * * /usr/bin/back.sh
14、【例】 每天删除5天前的文件
15、[root@xuegod163 ~]# crontab -e
16、1 1 * * * find /home/log/ -type f -mtime +5 -exec rm {} \;
17、【例】 使用root身份,给其它普通用户指定crontab
18、语法:crontab -u USERNAME -e/-l/-r
19、[root@xuegod63 ~]# crontab -u mk -e
20、1 * * * * touch /tmp/a.txt
21、【例】 清除其他用户的计划任务
22、[root@xuegod63 ~]# crontab -u mk -r
23、【例】 清空root用户自己的计划任务:
24、[root@xuegod63 ~]# crontab <code>-r</code>
<code></code>
2.5 anacron
cron用控制循环执行例行性工作。如果我要设定机器每天早上8点进行备份服务。除非保证机器 在8点这个时间点不会关机,如果关机了,cron中的脚本,在下次开机将不会被执行。
anacron并没有取代cron的意思,anacron用于机器重启后,会侦测停机期间,有没有cron没有执行的计划任务,如果有,会立即执行一下没有执行的任务。
<code></code>
本文转自 维度2018 51CTO博客,原文链接:http://blog.51cto.com/xinsz08/1796165,如需转载请自行联系原作者