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 定时任务的更多相关文章

  1. Quartz.Net在windows服务中的使用

    写在前面 这几天在弄一个项目,需要定时抓取一些数据,当时也想直接用timer算了.因为之前也弄过这样的项目,但是一想,已经用过了,再去使用同一种思路,未免太乏味了.就换了一种新玩法.这里将之前看到的一 ...

  2. RabbitMQ消息中间件极速入门与实战

    1:初识RabbitMQ RabbitMQ是一个开源的消息代理和队列服务器,用来通过普通协议在完全不同的应用之间共享数据,RabbitMQ是使用Erlang语言来编写的,并且RabbitMQ是基于AM ...

  3. Linux 常用命令 , 其他名 , 文件管理

    Linux 常用命令 , 其他名 , 文件管理 一丶Linux常用的指令 1. bsystemctl stop firewalld #关闭防火墙 2. iptables -F #清空防火墙规则 3. ...

  4. SpringBoot学习18:springboot使用Scheduled 定时任务器

    Scheduled 定时任务器:是 Spring3.0 以后自带的一个定时任务器. 1.在pom.xml文件中添加Scheduled依赖 <!-- 添加spring定时任务 Scheduled ...

  5. SpringBoot: 18.使用Scheduled 定时任务器(转)

    Scheduled 定时任务器:是 Spring3.0 以后自带的一个定时任务器. 1.在pom.xml文件中添加Scheduled依赖 <!-- 添加spring定时任务 Scheduled ...

  6. [JAVA]定时任务之-Quartz使用篇

    Quartz是OpenSymphony开源组织在Job scheduling领域又一个开源项目,它可以与J2EE与J2SE应用程序相结合也可以单独使用.Quartz可以用来创建简单或为运行十个,百个, ...

  7. spring 定时任务@Scheduled

    1.配置文件 <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http:/ ...

  8. Quartz定时任务

    spring多个定时任务quartz配置 例子1: biz-quartz-context.xml配置 <?xml version="1.0" encoding="U ...

  9. Yii2 定时任务创建(Console 任务)

    Yii2的定时任务可以有两种写法,原理都是通过服务器的定时任务去调用 1.通过调用指定的URL访问 就相当于在浏览器中访问 2.通过console调用 下面我们就来说说Console 是如何实现定时任 ...

  10. spring定时任务详解(@Scheduled注解)( 转 李秀才的博客 )

    在springMVC里使用spring的定时任务非常的简单,如下: (一)在xml里加入task的命名空间 xmlns:task="http://www.springframework.or ...

随机推荐

  1. BUUCTF-[GXYCTF2019]Ping Ping Ping

    一道命令执行题目    一.基础知识  Linux shell特殊字符(参考链接) [;]作为多个命令语句的分隔符(Command separator [semicolon]). 要在一个语句里面执行 ...

  2. Spring MVC文件上传下载

    Spring MVC文件上传下载 单文件上传 底层是使用Apache fileupload 组件完成上传,Spring MVC对这种方式进行封装. pom.xml <dependency> ...

  3. 如何获取android环境自带的jar包

    首先找到你需要用到的类,Ctrl 并点击跳转到这个类 跳转过来之后,找到这个类所在的包 Ctrl并点击,此时会跳转到这个包所在的jar的位置 右键class.jar并选择在文件资源浏览器打开 打开以后 ...

  4. matlab求解器的选择

    可以选择的变步长求解器有:ode45,ode23,ode113,odel5s,ode23s和discret.缺省情况下,具有状态的系统用的是ode45:没有状态的系统用的是discrete. 1)od ...

  5. CSC落榜

    2021年5月31日21:00点,CSC公布结果,未通过.看到这,我感觉空气瞬间凝固,窒息,那一瞬间我无比平静,我以为我会哭,但是,却泣不成声,脑中第一时间想到得是,如何面对认识得人,全世界感觉都知道 ...

  6. C#基础篇【类型转换原则】

    C#可以提供兼容类型的转换,转换始终会根据一个存在的值创建另一个新的值,转换分为两种,显式转换 隐式转换 隐式转换:自动发生 显示转换:需要添加强制转换 在一下案列中 我们把Int 32隐式转换为Do ...

  7. JS中有关(...)的介绍

    1,深拷贝一个对象 如上图所示,obj和tmp是完全两个独立的对象,互不影响. 2,数组复制 如上图所示,arr和tmp是两个完全独立的数组,彼此之间的值互不影响. 3,函数形参中的使用 这里的... ...

  8. 光纤加速卡第410篇:基于XCVU9P+ C6678的40G光纤的加速卡 光纤的加速卡 无线通信

    光纤加速卡第410篇:基于XCVU9P+ C6678的40G光纤的加速卡 光纤的加速卡 无线通信   基于XCVU9P+ C6678的40G光纤的加速卡 一.板卡概述 二.技术指标 •  板卡为自定义 ...

  9. python的global用法

    在python中,我们在函数外定义了一个变量,如果我们想在函数内对这个变量进行操作,就需要在函数内部将这个变量声明为global. 例1 x = 1 def func(): x = 2 func() ...

  10. pytorch中 model.cuda的作用

    在pytorch中,即使是有GPU的机器,它也不会自动使用GPU,而是需要在程序中显示指定.调用model.cuda(),可以将模型加载到GPU上去.这种方法不被提倡,而建议使用model.to(de ...