Linux定时任务详解

胖大海
• 阅读 652

crond 定时任务详解 crond 是 Linux 下用来周期性的执行某种任务或等待处理某些事件的一个守护进程,可以在无需人工干预的情况下运行作业。

我的环境是3A服务器搭建centos7.9,延迟低

安装 crond 服务

yum install crond

crond服务启动

systemctl start crond

systemctl enable crond

crond服务详解

Linux系统调度可以分为两类: 系统任务调度 | 用户任务调度

系统任务调度: 系统周期性所要执行的工作,比如写缓存数据到硬盘、日志清理等

crond服务在/etc/目录下有一个crontab文件,这个文件就是系统任务调度的配置文件。

配置文件内容解析

[root@dev etc]# vim /etc/crontab SHELL=/bin/bash # 指定shell PATH=/sbinL:/bin:/usr/sbin:/usr/bin # 指定了系统可执行文件路径 MAILTO=root # 指定了crond的任务执行信息将通过电子邮件发送给root用户,如果MAILTO变量的值为空,则表示不发送任务 执行信息给用户。 HOME=/ # 指定执行命令或脚本时使用的主目录 用户任务调度: 用户定期要执行的工作,比如用户数据备份、定时邮件提醒等

用户可以使用 crontab 工具来定制自己的计划任务。所有用户定义的crontab 文件都被保存在 /var/spool/cron目录中。其文件名与用户名一致。

可以通过 crontab 命令添加或者编辑需要定时执行的任务

crontab 命令基本参数

crond 服务提供 crontab 命令用于设置 crond 服务

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

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

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

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

特殊字符

  • : 代表所有可能的值

, :用逗号隔开的值表示一个范围列表,如 1,2 表示1-2

  • :可以在整数中间用中杠表示一个整数范围,如 6-8 , 表示6 7 8

/ : 可以用正斜线表示时间间隔频率,如 /10 用于minute字段,表示每10分钟执行一次。

添加定时任务

任务格式: M(分) H(时) D(日) m(月) d(周) command

M : 表示分钟1~59 , 每分钟用*或者 */1表示

H : 表示小时1~23(0表示0点)

D : 表示日期1~31

m : 表示月份1~12

d : 表示号星期0~6(0表示星期天)

command : 要运行的命令

每分钟执行一次 /root/test.sh脚本

/5 * * * /root/test.sh

每十分钟执行一次

/10 * * * * echo "1";

点赞
收藏
评论区
推荐文章
Easter79 Easter79
3年前
think
Supervisor的安装与使用入门在linux或者unix操作系统中,守护进程(Daemon)是一种运行在后台的特殊进程,它独立于控制终端并且周期性的执行某种任务或等待处理某些发生的事件。由于在linux中,每个系统与用户进行交流的界面称为终端,每一个从此终端开始运行的进程都会依附于这个终端,这个终端被称为这些进程的控制终端,当控制终端被关闭的时候,相
Stella981 Stella981
3年前
Linux计划任务 定时任务 Crond 配置详解 crond计划任务调试 sh
一、Crond是什么?(概述)crontab是一款linux系统中的定时任务软件用于实现无人值守或后台定期执行及循环执行任务的脚本程序,在企业中使用的非常广泛.  现在开始学习linux计划任务程序吧。crontab的优势:可以实现24小时或定期执行任务,非常高效实用,几乎是每个企业
Wesley13 Wesley13
3年前
PHP之定时任务的概念和实现
目录1.前言2.实现定时任务的几种方案2.1简单直接不顾后果型2.2简单可控型2.3简单改进型2.4服务器定时任务2.4.1在Crontab中执行本地脚本2.4.2在Crontab中使用URL执行脚本3.函数ini\_set用法详解3.1函数格式
Stella981 Stella981
3年前
NodeJs中nextTick、setTimeout、setImmediate运行顺序解析
setImmediate该方法用来把一些需要长时间运行的操作放在一个回调函数里,在浏览器完成后面的其他语句后,就立刻执行这个回调函数。setImmediate是宏任务,优先级是比定时任务低的。除非在定时任务中。测试代码:setImmediate(function(){console.log("setImmediate");
Stella981 Stella981
3年前
Linux的定时任务
任务计划的条件:1.在未来的某个时间点执行一次某个任务(atbatch)2.周期性的执行某个任务(cron)at在指定时间执行任务_用法_at\选项参数\\时间\_选项参数_\l      查看作业\c      显示即将执行任务的细节\d      使用任务id号
Stella981 Stella981
3年前
Linux下crontab命令的用法
crond是linux用来定期执行程序的命令。当安装完成操作系统之后,默认便会启动此任务调度命令。crond命令每分锺会定期检查是否有要执行的工作,如果有要执行的工作便会自动执行该工作。而linux任务调度的工作主要分为以下两类:1、系统执行的工作:系统周期性所要执行的工作,如备份系统数据、清理缓存2、个人执行的工作:某个用户定期要做的工作,例
Stella981 Stella981
3年前
Linux 定时任务调度(crontab命令)
1.crond是Linux下用周期性的执行某种任务或者等待处理某些事件的一个守护进程,crond进程会每分钟定期检查是否有要执行的任务,如果有要执行的任务则自动执行该任务2.Linux下的任务调度1.系统任务调度:系统周期性所要执行的工作,如:写缓存数据到硬盘、清理日志等。系统任务调度的配置文件/etc/c
Wesley13 Wesley13
3年前
MySql中的事件
一、前言自MySQL5.1.0起,增加了一个非常有特色的功能–事件调度器(EventScheduler),可以用做定时执行某些特定任务(例如:删除记录、对数据进行汇总等等),来取代原先只能由操作系统的计划任务来执行的工作。更值得一提的是MySQL的事件调度器可以精确到每秒钟执行一个任务,而操作系统的计划任务(如:Linux下的CRON或Wind
Stella981 Stella981
3年前
Python实现守护进程
概念守护进程(Daemon)也称为精灵进程是一种生存期较长的一种进程。它们独立于控制终端并且周期性的执行某种任务或等待处理某些发生的事件。他们常常在系统引导装入时启动,在系统关闭时终止。unix系统有很多守护进程,大多数服务器都是用守护进程实现的,例如inetd守护进程。需要了解的相关概念进程(process)
芝士年糕 芝士年糕
2年前
Linux定时任务(cron服务)
使用3A服务器搭建centos系统crond服务详解cron是Linux下用来周期性的执行某种任务或等待处理某些事件的一个守护进程,可以在无需人工干预的情况下运行作业。安装crond服务yuminstallcroniecrond服务启动systemctlstartcrondsystemctlenablecrondcrond服务解
胖大海
胖大海
Lv1
故园东望路漫漫,双袖龙钟泪不干。
文章
62
粉丝
3
获赞
28