doy 18 定时任务
1、定时任务
1、什么是定时任务
类似日常生活之中的闹钟;主要用于定时执行某些命令,达到定时处理数据的作用。
2、定时任务的软件的种类
1、linux操作系统自带的软件:crontab
2、第三方的定时任务软件:atd、anacron
3、WEB定时软件:PPGo_Job
4、基于etcd的定时任务系统
3、怎么加定时任务
1、定时任务加在哪里
1、定时任务配置文件
1、定时目录(需要执行的命令必须放在文件当中,同时也必须加上可执行权限)
/etc/cron.hourly : 每小时执行一次
/etc/cron.daily : 每天执行一次
/etc/cron.weekly : 每周执行一次
/etc/cron.monthly : 每月执行一次
2、定时任务的配置文件
/etc/crontab
3、定时任务编写文件
crontab -e : 编辑定时任务(用户可以省略,默认是当前用户)
crontab -l : 查看定时任务(只查看当前用户的定时任务)
2、用户定时任务
1、定时任务的格式
分钟 小时 日期 月份 星期 (crontab表达式)
user-name 指的是执行这个定时任务的用户
运行的命令
* 代表每
案例1:要求在每天凌晨3点45分执行一次
45 3 * * *
案例2:要求在每天凌晨3点45分以root用户执行/root/1.sh一次
45 3 * * * root /root/1.sh
2、定时任务保存的地方
所有的用户定时任务都保存在 /var/spool/cron 目录中,当用户增加定时任务时,会在该目录中添加以自己名称命名的文件,并将定时任务保存在其中。
3、可能会出现的提示
no crontab for oldboy02 :没有任何定时任务
crontab: installing new crontab : 新增了一个定时任务
Do you want to retry the same edit? : 编辑的定时任务可能会出现错误
4、定时任务的日志
当定时任务出现错误的时候,需要排查错误,就需要到定时任务日志文件中去查询错误的原因
/var/log/里的cron : 可以查看到执行那些定时任务
/var/log/messages: 记录系统操作的日志,(例如:用户登录)
5、定时任务的各种格式
案例1:要求每分钟执行一次
* * * * *
案例2:要求每天的凌晨3点执行一次
0 3 * * *
案例3:要求每天上午7,9,12点各执行一次
0 7,9,12 * * *
案例4:要求每个季度执行一次
0 3 1 1,4,7,10 *
案例5:要求在每天上午的7点每隔2分钟执行一次(0分钟的时候不执行)
*/7 7 * * *
0-59 8
案例6:要求每个月的1号的星期一执行一次
0 0 1 * 1
案例7:要求每天的8 - 11点每隔5分钟执行一次
*/5 8,9,10,11 * * *
*/5 8-11 * * *
案例8:要求每天的21点到凌晨3点,每个5分钟执行一次
*/5 21-3 * * *
*/5 21-23,0-3 * * *
案例9:要求每天上7点开始,每隔两分钟执行一次
*/2 7-23 * * *
案例10:要求每天上7点开始,每隔两小时的两分钟执行一次
*/2 7-23/2 * * *
案例11:要求工作日(1,5)的7点和下午两点执行一次
0 7,14 * * 1,2,3,4,5
mkdir /server/scripts -p
cd /server/scripts
vim miao.sh
> #!/bin/sh
>
> while true
>
> do
>
> echo lihui nb { (>>/tmp/a.log)-------后台执行;启动sh miao.sh &}
>
> sleep 1
>
> done
启动:sh miao.sh
查看 : ps -ef | grep miao
监控进程:tail -f /tmp/a.log
杀掉进程: kill [进程号]
Linux 定时任务分为两种 1、自身定期执行的任务
[root@localhost ~ 19:31:27]#ll /etc/|grep cron
-rw-------. 1 root root 541 Aug 9 2019 anacrontab
drwxr-xr-x. 2 root root 21 Sep 16 16:16 cron.d
drwxr-xr-x. 2 root root 42 Sep 16 16:17 cron.daily
-rw-------. 1 root root 0 Aug 9 2019 cron.deny
drwxr-xr-x. 2 root root 22 Sep 16 16:16 cron.hourly
drwxr-xr-x. 2 root root 6 Jun 10 2014 cron.monthly
drwxr-xr-x. 2 root root 6 Jun 10 2014 cron.weekly
-rw-r--r--. 1 root root 451 Jun 10 2014 crontab
2、用户执行的定时任务
crontab - l (查看用户执行的定时任务)
Linux 的定时任务分类 :
1、 at :适合执行一次就结束的调度任务你。突发性任务(依赖服务atd)
2、 anacron :适合于非7*24小时开机的服务器准备的;开机执行的
检测停机期间没有执行任务,在开机后一次性执行一遍
3、 crond,Crond服务器默认情况(每分钟),会检查系统中是否有需要执行的定时任务,如果有就会根据事先定义好的规则来执行这个定时任务。crond 依赖的服务就是crond *****
提示:我们说的crond是一个定时任务守护进程,而crondtab 是用户用来设置定时任务规则的命令
-l :查看
-e : 编辑======= crontab -l ***
-i : 删除=======crontab -e *** 文件路径 /var/spool/cron/root
-r :删除=======crontab -ri
-u : 指定使用用户执行=======crontab -u boy -l
chkconfig --list crond :查看某一个任务是不是开机自启动了
/etc/init.d/crond start :启动
/etc/init.d/crond restart :重启
/etc/init.d/crond status :查看状态
doy 18 定时任务的更多相关文章
- Quartz.Net在windows服务中的使用
写在前面 这几天在弄一个项目,需要定时抓取一些数据,当时也想直接用timer算了.因为之前也弄过这样的项目,但是一想,已经用过了,再去使用同一种思路,未免太乏味了.就换了一种新玩法.这里将之前看到的一 ...
- RabbitMQ消息中间件极速入门与实战
1:初识RabbitMQ RabbitMQ是一个开源的消息代理和队列服务器,用来通过普通协议在完全不同的应用之间共享数据,RabbitMQ是使用Erlang语言来编写的,并且RabbitMQ是基于AM ...
- Linux 常用命令 , 其他名 , 文件管理
Linux 常用命令 , 其他名 , 文件管理 一丶Linux常用的指令 1. bsystemctl stop firewalld #关闭防火墙 2. iptables -F #清空防火墙规则 3. ...
- SpringBoot学习18:springboot使用Scheduled 定时任务器
Scheduled 定时任务器:是 Spring3.0 以后自带的一个定时任务器. 1.在pom.xml文件中添加Scheduled依赖 <!-- 添加spring定时任务 Scheduled ...
- SpringBoot: 18.使用Scheduled 定时任务器(转)
Scheduled 定时任务器:是 Spring3.0 以后自带的一个定时任务器. 1.在pom.xml文件中添加Scheduled依赖 <!-- 添加spring定时任务 Scheduled ...
- [JAVA]定时任务之-Quartz使用篇
Quartz是OpenSymphony开源组织在Job scheduling领域又一个开源项目,它可以与J2EE与J2SE应用程序相结合也可以单独使用.Quartz可以用来创建简单或为运行十个,百个, ...
- spring 定时任务@Scheduled
1.配置文件 <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http:/ ...
- Quartz定时任务
spring多个定时任务quartz配置 例子1: biz-quartz-context.xml配置 <?xml version="1.0" encoding="U ...
- Yii2 定时任务创建(Console 任务)
Yii2的定时任务可以有两种写法,原理都是通过服务器的定时任务去调用 1.通过调用指定的URL访问 就相当于在浏览器中访问 2.通过console调用 下面我们就来说说Console 是如何实现定时任 ...
- spring定时任务详解(@Scheduled注解)( 转 李秀才的博客 )
在springMVC里使用spring的定时任务非常的简单,如下: (一)在xml里加入task的命名空间 xmlns:task="http://www.springframework.or ...
随机推荐
- select multiple 浏览器兼容
select multiple 时一般是设置 height <select multiple="multiple" style="height:87px;" ...
- oracle to_char函数的用法
select to_char(sysdate,'yyyy-MM-dd HH24:mi:ss') from dual; 其中,HH24代表是24小时制的,mi代表分钟,不要写为mm
- JavaScript 错误 throw、try、catch
JavaScript错误throw.try.catch try:语句测试代码的错误: catch:语句处理错误: throw:语句创建自定义错误: finally:语句在try和catch语句之后,无 ...
- LOD Group
LOD Group 调节摄像机距离,在不同的距离显示不同物体.常用于物体高低模之间的转换,如离摄像机较远时渲染低模物体,离摄像机较近时渲染高模物体.
- 2020icpc济南 - A
组合数学 + 高斯消元 [A-Matrix Equation_第 45 届国际大学生程序设计竞赛(ICPC)亚洲区域赛(济南) (nowcoder.com)](https://codeforces.c ...
- Vue基础 · 组件的使用(4)
组件 将公用的功能抽离出来,形成组件:目的:复用代码. 1.1 全局组件 <div id="app"> <!--引用组件,可多次引用--> <demo ...
- Java数组之数组的使用
数组的使用 普通的for循环 For-Each循环 数组作方法入参 数组作返回值 public class ArrayDemo03 { public static void main(String[] ...
- 把一个元器件的原理图分成多个Part-转载
(24条消息) [AD20]把一个元器件的原理图分成多个Part_不知道在干嘛每天的博客-CSDN博客_ad中原理图怎么分成几部分 以LM358芯片为例:把LM358原理图的A和B分开画,分成A和B两 ...
- 记事本默认编码改为UTF-8
前端时间发现用记事本直接创建的记录目标信息的TXT文本再用sublime打开变成了乱码,才发现编码有问题,记事本直接创建的文本编码竟然是ANSI编码. 于是动手将记事本默认编码改为UTF-8. 记事本 ...
- jquery获取父级容器高度
//获取浏览器显示区域的高度console.log( $(window).height()); //获取浏览器显示区域的宽度console.log($(window).width()); //获取页面 ...