上一次修改时间:2015-11-12 17:38:05

计划任务

  1. 单次任务计划实例(atq命令可以查看当前的任务计划,ctrl+d结束输入)

    #三天后的下午 5 点钟执行 /bin/ls

    [root@localhost ~]# at 5pm+3days
    at> /bin/ls
    at> <EOT>
    job 23 at Sun Nov 15 17:00:00 2015

    #明天的 17:20 执行 /bin/date

    [root@localhost ~]# at 17:20 tomorrow
    at> /bin/date
    at> <EOT>
    job 24 at Fri Nov 13 17:20:00 2015

2.单次任务计划删除及查看详情

    #删除 atrm 8

    #查看详情 at -c 8


3.循环任务计划crontab示例

#编辑root的任务计划

crontab -uroot -e

#指定每小时的第5分钟执行一次ls命令

5 * * * * ls

#指定每天的 5:30 执行ls命令
30 5 * * * ls

#指定每月8号的7:30分执行ls命令
30 7 8 * * ls

#指定每年的6月8日5:30执行ls命令
30 5 8 6 * ls

#指定每星期日的6:30执行ls命令
30 6 * * 0 ls
注:0表示星期天,1表示星期1,以此类推,也可以用英文来表示,sun表示星期天,mon表示星期一等。

#每月10号及20号的3:30执行ls命令
30 3 10,20 * * ls
注:“,”用来连接多个不连续的时段

#每天8-11点的第25分钟执行ls命令
25 8-11 * * * ls
注:“-”用来连接连续的时段

#每15分钟执行一次ls命令
*/15 * * * * ls
即每个小时的第0 15 30 45 60分钟执行ls命令

#每个月中,每隔10天6:30执行一次ls命令
30 6 */10 * * ls
即每月的1、11、21、31日是的6:30执行一次ls命令。

#每天7:50以root 身份执行/etc/cron.daily目录中的所有可执行文件
50 7 * * * root run-parts /etc/cron.daily
注:run-parts参数表示,执行后面目录中的所有可执行文件。


#新增调度任务可用两种方法:
1、在命令行输入: crontab -e 然后添加相应的任务,wq存盘退出。
2、直接编辑/etc/crontab 文件,即vi /etc/crontab,添加相应的任务。

#查看调度任务
crontab -l //列出当前的所有调度任务
crontab -u root -l   //列出用户root的所有调度任务

#删除任务调度工作
crontab -r  //删除所有任务调度工作

#任务调度执行结果的转向

例1:每天5:30执行ls命令,并把结果输出到/jp/test文件中

30 5 * * * ls >/jp/test 2>&1

注:2>&1 表示执行结果及错误信息