【Linux】Linux入门实操——定时任务调度

news2024/11/22 16:19:06

一、crond调度

1. 概述

任务调度:  是指系统在某个时间执行的特定的命令或程序
任务调度分类

1. 系统工作 :  有些重要的工作必须周而复始地执行。如病毒扫描等
2. 用户工作 :用户可能希望执行某些程序,比如对mysql数据库的备份。

2. 基本语法

crontab   [选项]

常用选项:

选项说明
-e编辑crontab定时任务
-l查询crontab任务
-r删除当前用户的所有crontab任务

3. 快速入门

  1. 设置任务调度文件: /etc/crontab
  2. 设置个人任务调度:执行crontab -e 命令
  3. 接着输入任务到调度文件

        如:*/1 * ***  ls -l /etc/ > /tmp/to.txt
        表示每分钟执行ls-l /etc/  > /tmp/to.txt命令

crond 共有五个占位符 * * * * *,从左往右分别代表分、时、日、月、周。

占位符说明

占位符范围说明
0-59一个小时的第几分钟
0-23一天中第几个小时
1-31一个月中的第几天
1-12一年中的第几个月
0-7(0和7都表示周日)一周中的周几

特殊符号说明

【*】表示任何时间,如在分中占位符设置*表示每分钟都执行一次

,表示不连续。如在分钟占位符设置 “3,5 * * * *”表示每个小时的第三分钟和第五分钟执行一次

【-】表示连续的。如在周的占位符设置“* * * * 1-3”表示每周一至周三执行一次

【*/n】间隔多久执行一次。如在分占位符设置“*/5”表示每隔5分钟执行一次,n表示间隔时间。

案例演示

案例1: 每隔1分钟,就将当前的日期信息,追加到/tmp/mydate文件中
*/1 * * * * date >> /tmp/mydate
案例2:每隔1分钟,将当数日期和日历都追加到 home/mycal中
步骤:
(1) vim /home/my.sh写入内容date >> /home/mycal 和cal>> /home/mycal
(2)给my.sh增加执行权限,chmod u+x /home/my.sh
(3) crontab -e     增加  */1 * * * *   /home/my.sh
案例3: 每天凌晨2:00将mysql数据库testdb,备份到文件中。提示:指令为
mysqldump -u root -p密码数据库>/home/db.bak
步骤(1) crontab -e
步骤(2) 0 2 * * * mysqldump -u root -proot testdb >  /home/db.bak

4. cron相关指令

conrtab -r:  终止任务调度。
crontab -l: 列出当前有那些任务调度
service crond restart   [重启任务调度]

二、at定时任务

1. 概述

  • at 命令是一次性定时计划任务,at 的守护进程 atd 会以后台模式运行,检查作业队列来运行。
  • 默认情况下,atd 守护进程每60秒检查作业队列,有作业时,会检查作业预设的执行时间,如果预设执行时间与当前时间匹配,则运行此作业。
  • at 命令是一次性定时计划任务,执行完一个任务后不再执行此任务了。可以理解为购物车,购买之后购物车里待购清单就消失了。
  • 在使用 at命令的时候,一定要保证atd进程的启动,可以使用相关指令来查看 atd 是否在运行

ps -ef | grep atd   // ps -ef  检测所有在运行的进程(ps : process show),grep atd 过滤查看 atd 是否在运行

 

注: 如果没有检测到,使用命令下载,再启动。之后再次查找就有了

// 下载 at

yum install at

// 启动 atd

service atd start

2. 基本语法

1. 创建定时任务

at   [选项]   [时间]
注意:Ctrl+D 结束 at 命令的输入,输出两次 


2. 删除定时任务

atrm  [任务编号] 

  • 常用选项
选项说明
-m当指定的任务被完成后,将给用户发送邮件,即使没有标准输出
-latq的别名
-datrm的别名
-v显示任务将被执行的时间
-c打印任务的内容到标准输出
-V显示版本信息
-q使用指定的队列
-f从指定文件读入任务而不是从标准输入读入
-t以时间参数的形式提交要运行的任务 
  • at 时间定义 
  1. 接受在当天的 hh:mm(小时:分钟)式的时间指定。假如该时间已过去,那么就放在第二天执行。例如:04:00。
  2. 使用midnight(深夜),noon(中午),teatime(饮茶时间,一般是下午4点)等比较模糊的词语来指定时间。
  3. 采用12小时计时制,即在时间后面加上AM(上午)或PM(下午)来说明是上午还是下午。例如:12pm。
  4. 指定命令执行的具体日期,指定格式为month day(月日)或mm/dd/yy(月/日/年)或dd.mm.yy(日.月.年),指定的日期必须跟在指定时间的后面。例如: 04:00 2021-03-1。
  5. 使用相对计时法。指定格式为:now + count time-units , now就是当前时间,time-units是时间单位,这里能够是minutes(分钟)、hours(小时)、days(天)、weeks(星期)。count是时间的数量,几天,几小时。例如:now+5 minutes。
  6. 直接使用today(今天)、tomorrow(明天)来指定完成命令的时间。

3. 入门案例 

案例1:  2天后的下午5点执行/bin/ls /home。

案例2: atq 命令来查看系统中没有执行的工作任务


案例3:明天 17 点钟,输出时间到指定文件内比如/root/date100.log

案例4: 2分钟后,输出时间到指定文件内。比如/root/date200.log

案例5: 删除已经设置的任务,atrm编号。atrm 4 //表示将job队列,编号为4的 job删除

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2245423.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

找到字符串中所有字母异位词(java)

题目描述: 给定两个字符串 s 和 p,找到 s 中所有 p 的 异位词的子串,返回这些子串的起始索引。不考虑答案输出的顺序。 字母异位词 是由重新排列源单词的所有字母得到的一个新单词 示例 1: 输入: s "cbaebabacd", p "abc&…

Leetcode226. 翻转二叉树(HOT100)+Leetcode221. 最大正方形(HOT100)

链接 题解: 本题是要镜像反转二叉树,相当于从中间一分,然后把左子树和右子树对调,但又不是简单的对调,还要继续反转子树的子树,所以要用递归。 我们特判root是否为空(否则出现nullptr->nul…

ISUP协议视频平台EasyCVR私有化视频平台新能源汽车充电停车管理方案的创新与实践

在环保意识提升和能源转型的大背景下,新能源汽车作为低碳出行的选择,正在全球迅速推广。但这种快速增长也引发了充电基础设施短缺和停车秩序混乱等挑战,特别是在城市中心和人口密集的居住区,这些问题更加明显。因此,开…

国际知名摄影测量与遥感专家、瑞士苏黎世联邦理工学院终身教授Armin Gruen莅临大势智慧参观交流

11月18日,瑞士苏黎世联邦理工学院终身教授、国际摄影测量与遥感学会荣誉会员、武汉大学测绘遥感信息工程国家重点实验室客座教授Armin Gruen莅临武汉大势智慧科技有限公司(以下简称“大势智慧”)参观交流。大势智慧董事长黄先锋亲自接待了Arm…

RTSP播放器EasyPlayer.js播放器分辨率高的视频在设置container的宽高较小时,会出现锯齿状的画面效果

流媒体播放器的核心技术及发展趋势展现了其在未来数字生活中的无限潜力。随着技术的不断进步和市场的持续发展,流媒体播放器将在内容创新、用户体验优化以及跨平台互通等方面取得新的突破。对于从业者而言,把握这些趋势并积极应对挑战将是实现成功的关键…

C# 数据结构之【树】C#树

以二叉树为例进行演示。二叉树每个节点最多有两个子节点。 1. 新建二叉树节点模型 using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks;namespace DataStructure {class TreeNode{public int Data { get;…

Sqlite: Java使用、sqlite-devel

这里写目录标题 一、简介二、使用1. Java项目中(1)引入驱动(2)工具类(3)调用举例 2. sqlite-devel in linuxsqlite-devel使用 三、更多应用1. 数据类型2. 如何存储日期和时间3. 备份 一、简介 非常轻量级&…

MySQL深入:B+树的演化、索引和索引结构

提示:内容是读《MySQL技术内幕:InnoDB存储引擎》,笔记摘要 文章目录 二叉查找树平衡二叉树(AVL) B树(BTree)B树(BTree)InnoDB B树索引索引结构(InnoDB B树)B树存放的数据量 二叉查找树 在二叉查找树中,左子…

C语言-11-18笔记

1.C语言数据类型 类型存储大小值范围char1 字节-128 到 127 或 0 到 255unsigned char1 字节0 到 255signed char1 字节-128 到 127int2 或 4 字节-32,768 到 32,767 或 -2,147,483,648 到 2,147,483,647unsigned int2 或 4 字节0 到 65,535 或 0 到 4,294,967,295short2 字节…

“乐鑫组件注册表”简介

当启动一个新的开发项目时,开发者们通常会利用库和驱动程序等现有的代码资源。这种做法不仅节省时间,还简化了项目的维护工作。本文将深入探讨乐鑫组件注册表的概念及其核心理念,旨在指导您高效地使用和贡献组件。 概念解析 ESP-IDF 的架构…

【人工智能】PyTorch、TensorFlow 和 Keras 全面解析与对比:深度学习框架的终极指南

文章目录 PyTorch 全面解析2.1 PyTorch 的发展历程2.2 PyTorch 的核心特点2.3 PyTorch 的应用场景 TensorFlow 全面解析3.1 TensorFlow 的发展历程3.2 TensorFlow 的核心特点3.3 TensorFlow 的应用场景 Keras 全面解析4.1 Keras 的发展历程4.2 Keras 的核心特点4.3 Keras 的应用…

Sigrity SPEED2000 TDR TDT Simulation模式如何进行时域阻抗仿真分析操作指导-差分信号

Sigrity SPEED2000 TDR TDT Simulation模式如何进行时域阻抗仿真分析操作指导-差分信号 Sigrity SPEED2000 TDR TDT Simulation模式如何进行时域阻抗仿真分析操作指导-单端信号详细介绍了单端信号如何进行TDR仿真分析,下面介绍如何对差分信号进行TDR分析,还是以下图为例进行分…

Django一分钟:django中收集关联对象关联数据的方法

场景:我有一个模型,被其它多个模型关联,我配置了CASCADE级联删除,我想要告知用户删除该实例之后,哪些关联数据将会被一同删除。 假设我们当前有这样一组模型: class Warehouse(models.Model):""…

Flink学习连载第二篇-使用flink编写WordCount(多种情况演示)

使用Flink编写代码,步骤非常固定,大概分为以下几步,只要牢牢抓住步骤,基本轻松拿下: 1. env-准备环境 2. source-加载数据 3. transformation-数据处理转换 4. sink-数据输出 5. execute-执行 DataStream API开发 //n…

利用开源的低代码表单设计器FcDesigner高效管理和渲染复杂表单结构

FcDesigner 是一个强大的开源低代码表单设计器组件,支持快速拖拽生成表单。提供丰富的自定义及扩展功能,FcDesigner支持多语言环境,并允许开发者进行二次开发。通过将表单设计输出为JSON格式,再通过渲染器进行加载,实现…

【三合黑马指标】指标操盘技术图文教程,三线粘合抓黑马,短线买点持股辅助,通达信炒股软件指标

如上图,副图指标【三合黑马指标】,三条线彩线1-2-3,四条虚线代表四种短线技术做多信号,最底部的凸起形态线短线做多确认信号 。 黑马牛股选股技巧,可以选择周线三线粘合状态,在粘合时选股关注,如…

nwjs崩溃复现、 nwjs-控制台手动操纵、nwjs崩溃调用栈解码、剪切板例子中、nwjs混合模式、xdotool显示nwjs所有进程窗口列表

-1. nwjs在低版本ubuntu运行情况 ubuntu16.04运行nw-v0.93或0.89报错找不到NSS_3.30、GLIBC_2.25 uname -a #Linux Asus 4.15.0-112-generic #113~16.04.1-Ubuntu SMP Fri Jul 10 04:37:08 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux cat /etc/issue #Ubuntu 16.04.7 LTS \n \l…

DICOM图像解析:深入解析DICOM格式文件的高效读取与处理

引言 在医学影像领域,DICOM(Digital Imaging and Communications in Medicine)标准已成为信息交换和存储的核心规范。掌握DICOM文件的读取与解析,对于开发医学影像处理软件至关重要。本文将系统地解析DICOM文件的结构、关键概念,并提供高效的读取与显示方法,旨在为开发者…

npm上传自己封装的插件(vue+vite)

一、npm账号及发包删包等命令 若没有账号,可在npm官网:https://www.npmjs.com/login 进行注册。 在当前项目根目录下打开终端命令窗口,常见命令如下: 1、登录命令:npm login(不用每次都重新登录&#xff0…

SpringAOP模拟实现

文章目录 1_底层切点、通知、切面2_切点匹配3_从 Aspect 到 Advisor1_代理创建器2_代理创建时机3_Before 对应的低级通知 4_静态通知调用1_通知调用过程2_模拟 MethodInvocation 5_动态通知调用 1_底层切点、通知、切面 注意点: 底层的切点实现底层的通知实现底层的…