您的位置:首页 > 运维架构 > Linux

Linux计划任务

2017-11-03 13:58 218 查看

crond 是linux用来定期执行程序的命令,相关命令:

/sbin/service crond start //启动服务

/sbin/service crond stop //关闭服务

/sbin/service crond restart //重启服务

/sbin/service crond reload //重新载入配置


crontab命令选项:

-u //设定某个用户的cron服务,一般root用户在执行这个命令的时候需要此参数

-l //列出某个用户cron服务的详细内容

-r //删除某个用户的cron服务

-e //编辑某个用户的cron服务

比如说root查看自己的cron设置:crontab -u root -l
再例如,root想删除fred的cron设置:crontab -u fred -r
在编辑cron服务时,编辑的内容有一些格式和约定,输入:crontab -u root -e
进入vi编辑模式,编辑的内容一定要符合下面的格式:*/1 * * * * ls >> /tmp/test.txt


cron文件语法:

分     小时    日       月       星期      命令
0-59    0-23   1-31     1-12     0-6     command     (取值范围,0表示周日一般一行对应一个任务)

"*"代表取值范围内的数字,
"/"代表"每",
"-"代表从某个数字到某个数字,
","分开几个离散的数字


语法:

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

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

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

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

30     6       *       *      0     ls             //指定每星期日的6:30执行ls命令[注:0表示星期天,1表示星期1。]

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

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

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

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

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


任务结果重定向:

例1:每天5:30执行ls命令,并把结果输出到/jp/test文件中
30 5 * * * ls >/jp/test 2>&1
注:2>&1 表示执行结果及错误信息。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: