linux - crontab 定时任务

在Linux开发之中,有一些常用的功能可能都会用shell来开发,同时,这些脚本可能需要在一定时间内重复执行,这些就需要用到

linux 的 crontab 定时任务了。


首先是检查你的电脑是否安装了crontab这个工具(注意,这个是一个工具来的哦)

输入命令  crontabl -l    是查看定时任务列表

service crond status   是查看工具是否正在运行,而我的电脑是装了的,所以会返回


如果你的电脑没有装的话,那么你就需要先安装一下了,具体命令是

yum install vixie-cron

yum install crontabs

注意需要能连接外网


service crontab start(启动)

service crontab stop(停止)

service crontab restart(重启)

一般都是启动的,就像我上面那样


重要文件,保证执行的信息的文件一般在

 /var/log/cron   这个文件中


配置文件及介绍文件在 /etc/crontab 这个文件中



然后是通过命令来创建一个定时任务

crontab -e

打开定时任务的文件然后输入

#每隔一分钟就把当前时间写入到 /tmp/log.txt 文件中

*/1 * * * * date >> /tmp/log.txt

然后保证文件,然后再用命令查看  tail -f /tmp/log.txt


  发现每隔一分钟就会写入当前时间到文件中(当然必须保证crontab是启动中的)


其实在打入命令  crontab -e  实际上编辑的文件就是在  var/spool/cron/root 下面的文件  root代表用户名


ll /etc/cron.d  这里面还有一些默认会加载的定时执行任务,一般就不要去改了吧,还是用我们原始的方法改吧

都是 crond 服务提交的,删除就是输入刚刚的命令 crontab -e 把你的文件删除即可

crontab 表达式     * * * * *

总共有5个位置,分别表示

分钟  -- 取值 (0-59) 

小时  -- 取值(0-23)

日期  -- 取值 (1-31)

月份  -- 取值   (1-12)

星期  --取值  (0-7) 0或7表示星期天


一些案例




1-59/2 * * * * 这个比较好玩,代表的意思是从每个小时的第一分钟起,每隔两分钟执行一遍,也就是 1, 3, 5。。分钟

而上面的

*/2 * * * * 表示从0分钟起,每隔2分钟执行一遍  0,2, 4 。。。。分钟

因为*是所有取值的意思,而分钟的取值就是  0-59





恩,暂时只更新这些,多谢大家

猜你喜欢

转载自blog.csdn.net/zxc_user/article/details/80658709