linux命令学习之crontab命令的使用定时任务

作者:白雪 | 创建时间: 2023-07-19
本经验介绍在linux系统中所要使用到的系统命令,这里教大家学习linux命令之 crontab命令的使用定时任务。crond命令每分锺会定期检查是否有要执行的工作,如果有要执行的工作便会 自动执行该工作,而linux任务调度的工作主要分为...
linux命令学习之crontab命令的使用定时任务

操作方法

1 crontab命令的组成如下: 时程表的格式如下: f1 f2 f3 f4 f5 program minute hour day month week command  顺序:分 时 日 月 周 minute: 表示分钟,可以是从0到59之间的任何整数。 hour:表示小时,可以是从0到23之间的任何整数。 day:表示日期,可以是从1到31之间的任何整数。 month:表示月份,可以是从1到12之间的任何整数。 week:表示星期几,可以是从0到7之间的任何整数,这里的0或7代表星期日。 command:要执行的命令,可以是系统命令,也可以是自己编写的脚本文件。这里举一个每分钟执行一次的例子: crontab -e 中编辑并保存 输入命令: *  *  *  *  *   /var/dingshi/date.sh date.sh脚本内容为: #!/bin/bash date >> /var/dingshi/time.log 运行结果: 2017年 12月 14日 星期四 20:35:30 CST 2017年 12月 14日 星期四 21:31:01 CST 2017年 12月 14日 星期四 21:32:01 CST

2 每 小时执行一次脚本 crontab -e 中编辑并保存 输入命令: * */1 * * *   /var/dingshi/date.sh每 天执行一次脚本 输入命令: * * */1 * *   /var/dingshi/date.sh 每 月执行一次脚本 输入命令: * * * */1 *   /var/dingshi/date.sh

3 可以用各字段来表示取范围 星号( *):代表所有可能的值 逗号( ,):可以用逗号隔开的值指定一个列表范围,例如,“1,2,5,7,8,9” 杠( -):可以用整数之间的中杠表示一个整数范围,例如“2-6”表示“2,3,4,5,6” 正斜线( /):可以用正斜线指定时间的间隔频率,例如“0-23/2”表示每两小时执行一次。 同时正斜线可以和星号一起使用,例如 */10,如果用在minute字段,表示每十分钟执行一次。 例子: 1. 每月1、10、22日的4 : 45分 运行date.sh  脚本 输入命令: 45 4 1,10,22 * *    /var/dingshi/date.sh 2.每天18 : 00至23 : 00之间每隔30分钟 运行date.sh  脚本 输入命令: 0,30 18-23  * * *   /var/dingshi/date.sh 3晚上11点到早上7点之间,每隔一小时运行date.sh  脚本 输入命令: * 23-7/1 * * *   /var/dingshi/date.sh

4 执行目录中内的脚本,每小时执行 /var/dingshi/目录内的脚本crontab -e 中编辑并保存 输入命令: 01 * * * * root run-parts /var/dingshi/

5 周一到周五每天下午 5:00 寄一封信给 alex@domain.name 输入命令: 0 17 * * 1-5 mail -s "hi" alex@domain.name < /tmp/maildata

温馨提示

date.sh 中的date >> /var/dingshi/time.log 一定要写绝对路径不然crontab可能没有加载环境就运行不了
点击展开全文

更多推荐