Centos系统中创建定时器完成定时任务

news2024/9/23 17:21:11

Centos系统中创建定时器完成定时任务

在这里插入图片描述

时间不一定能证明很多东西,但是一定能看透很多东西,坚信自己的选择,不动摇,使劲跑,明天会更好。

在 CentOS 上,可以使用 systemd 定时器来创建一个每十秒执行一次的任务。systemd 的定时器提供了更细粒度的定时功能,可以替代 cron 来执行任务。以下是如何使用 systemd 定时器来实现每十秒执行一次脚本的步骤:

1. 创建一个执行任务的脚本

首先,创建一个脚本来执行所需的任务。例如,创建一个脚本 /usr/local/bin/create_wanghui.sh,内容如下:

#!/bin/bash

# 定义要创建的目录
DIRECTORY="/usr/local/src/wanghui"

# 检查目录是否已经存在
if [ -d "$DIRECTORY" ]; then
  echo "目录 $DIRECTORY 已经存在."
else
  # 创建目录
  mkdir -p "$DIRECTORY"
  
  # 检查是否创建成功
  if [ -d "$DIRECTORY" ]; then
    echo "目录 $DIRECTORY 已成功创建."
  else
    echo "目录 $DIRECTORY 创建失败."
  fi
fi

2. 赋予脚本执行权限

chmod +x /usr/local/bin/create_wanghui.sh

3. 创建一个 systemd 服务单元文件

创建一个 systemd 服务单元文件 /etc/systemd/system/create_wanghui.service,内容如下:

[Unit]
Description=Create Wanghui Directory

[Service]
ExecStart=/usr/local/bin/create_wanghui.sh

4. 创建一个 systemd 定时器单元文件

创建一个 systemd 定时器单元文件 /etc/systemd/system/create_wanghui.timer

[Unit]
Description=Run create_wanghui.sh every 10 seconds

[Timer]
OnBootSec=10sec
OnUnitActiveSec=10sec

[Install]
WantedBy=timers.target

这段配置是一个 systemd 定时器单元文件的内容,用于定义一个任务每隔10秒钟执行一次。以下是对各部分的详细解释:

[Unit]

  • Description=Run create_wanghui.sh every 10 seconds
    这一行提供了定时器的简短描述,用来说明定时器的用途。在这个例子中,它描述了该定时器会每10秒执行一次 create_wanghui.sh 脚本。

[Timer]

  • OnBootSec=10sec
    这个选项指定了定时器在系统启动后多久首次启动。在这里,它设置为 10sec,意味着系统启动后10秒钟,定时器会首次运行。

  • OnUnitActiveSec=10sec
    这个选项指定了定时器在上次启动后多久再次启动。在这里,设置为 10sec,意味着定时器在每次任务完成后10秒钟再次启动任务。因此,任务会每隔10秒钟执行一次。

[Install]

  • WantedBy=timers.target
    这一行指定了定时器在什么时候启动。timers.target 是一个 systemd 目标,表示当系统到达 timers.target 这个状态时(通常是在系统启动的过程中),这个定时器将会被启用。

总体解释

这个 systemd 定时器配置用于设置一个任务,每次系统启动后10秒钟运行,并且之后每隔10秒钟重复执行该任务。定时器的行为由 OnBootSecOnUnitActiveSec 两个指令控制,确保任务定期执行。如果这个定时器被启用,它将从系统启动后10秒钟开始,每10秒钟运行一次指定的服务(通常是一个脚本或程序)。

如果想要每天凌晨一点执行呢

[Unit]
Description=Run create_wanghui.sh daily at 1 AM

[Timer]
OnCalendar=*-*-* 01:00:00
Persistent=true

[Install]
WantedBy=timers.target

这段配置是一个 systemd 定时器单元文件,用于每天凌晨1点运行 create_wanghui.sh 脚本。以下是各部分的详细解释:

[Unit]

  • Description=Run create_wanghui.sh daily at 1 AM
    这行描述了定时器的用途,即每天凌晨1点执行 create_wanghui.sh 脚本。

[Timer]

  • OnCalendar=-- 01:00:00*
    这一行定义了定时器的执行时间。OnCalendar 指定了一个日期和时间格式:

  • *-*-* 表示任意年份、任意月份、任意日期。

  • 01:00:00 表示每天的凌晨1点整。

因此,这个定时器配置将会在每天凌晨1点00分00秒触发任务。

  • Persistent=true
    这一行确保了当系统在计划执行时间未运行时,任务会在下次系统启动时自动执行。这意味着即使系统在凌晨1点关闭或处于睡眠状态,任务将在系统再次启动时立即执行,确保任务不会错过。

[Install]

  • WantedBy=timers.target
    这一行指定了定时器在 timers.target 到达时启动。timers.target 是一个系统级别的目标,表示定时任务将会在系统达到这个目标时开始运行。

总体解释

这个 systemd 定时器配置用于设置一个任务,确保它每天在凌晨1点准时执行。如果系统在计划执行时间之前未开机或在执行时间处于睡眠状态,那么任务会在系统下次启动时立即执行,以保证任务不会错过。

5. 重新加载 systemd 配置并启动定时器

重新加载 systemd 配置,以使其识别新创建的单元文件:

sudo systemctl daemon-reload

启动定时器:

sudo systemctl start create_wanghui.timer

启用定时器,使其在系统启动时自动启动:

sudo systemctl enable create_wanghui.timer

6. 检查定时器状态

你可以使用以下命令检查定时器的状态和下一次触发时间:

systemctl list-timers create_wanghui.timer

这样,你就创建了一个 systemd 定时器,每十秒运行一次指定的脚本。这个方法利用了 systemd 的定时器功能,比 cron 更灵活和强大,特别是在需要精细的时间控制时。

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

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

相关文章

拟合与插值|线性最小二乘拟合|非线性最小二乘拟合|一维插值|二维插值

挖掘数据背后的规律是数学建模的重要任务,拟合与插值是常用的分析方法 掌握拟合与插值的基本概念和方法熟悉Matlab相关程序实现能够从数据中挖掘数学规律 拟合问题的基本提法 拟合问题的概念 已知一组数据(以二维为例),即平面上n个点 ( x i , y i ) …

Blazor开发框架Known-V2.0.8

V2.0.8 Known是基于Blazor的企业级快速开发框架,低代码,跨平台,开箱即用,一处代码,多处运行。目前已有部分客户在使用,最近客户的项目和产品,有的在Docker中运行,有的在重新升级改造…

2024.8.18周报

摘要 本周利用阳朔水站的数据对1D浅水方程进行了求解,通过将1D浅水方程的物理约束纳入到神经网络,将时空坐标x,t作为输入到神经网络中,得到预测解水深和流量的数据,然后利用真实的数据进行比较,计算损失。…

【鸿蒙学习】HarmonyOS应用开发者基础 - 白皮书V3.0的关键知识点

本文内容由智谱清言的长文章解读生成。 智谱AI(https://zhipuai.cn/) 白皮书V3.0这份文档详细介绍了鸿蒙生态应用开发的各个方面,涵盖了从核心概念到开发流程、测试和运维分析的各个环节。由于这本书有128页,读完时间较长&#xf…

Java数组02:数组内存分析、三种初始化方式及特点

本节内容视频链接:Java数组03:三种初始化及内存分析_哔哩哔哩_bilibilihttps://www.bilibili.com/video/BV12J41137hu?p53&vd_sourceb5775c3a4ea16a5306db9c7c1c1486b5 1.数组内存分析 堆:存放new的对象和数组;可以被所有线…

【精选】基于Python大型购物商城系统(京东购物商城,淘宝购物商城,拼多多购物商城爬虫系统)

目录: 目录: 系统介绍: 系统开发技术 Python语言 Django框架简介 MySQL数据库技术 B/S架构 系统设计 系统总体设计 系统详细界面实现: 系统测试 测试目的 测试用例 本章小结 参考代码: 为什么选择我&…

【C语言可变参数函数的使用与原理分析】

文章目录 1 前言2 实例2.1实例程序2.2程序执行结果2.3 程序分析 3 补充4 总结 1 前言 在编程过程中,有时会遇到需要定义参数数量不固定的函数的情况。 C语言提供了一种灵活的解决方案:变参函数。这种函数能够根据实际调用时的需求,接受任意…

yum 源更新

本人使用Centos7系统; 系统自带的Yum源地址,下载速度又慢,而且有些包还是没有的,于是考虑将yum进行更换,可以更换为国内其他厂商的yum源,比如:阿里、腾讯、163、清华的,尽可能汇总&…

如何有效利用渗压计来避免溃坝风险

有效利用渗压计来避免溃坝风险是一个综合性的过程,涉及渗压计的安装、监测、数据分析以及应急响应等多个方面。以下是一些关键步骤和建议: 选择合适的渗压计: 根据具体工程需求和环境条件,选择合适的渗压计类型确保渗压计的质量可…

嘀嗒出行拼车系统源码

嘀嗒出行APP的开发需求与功能架构主要围绕提升用户出行体验、提高匹配效率、保障行程安全以及满足多样化的出行需求来构建。以下是对嘀嗒出行APP开发需求与功能架构的详细解析 一、开发需求 市场需求:随着出行市场的竞争加剧,嘀嗒出行需要不断提高自身服…

Codigger 视频会议(Meeting):医疗行业的创新协作利器

在当今数字化快速发展的时代,医疗行业也在不断拥抱信息技术带来的变革。远程医疗协作作为提升医疗服务效率和质量的重要手段,正日益受到关注。而 Codigger 视频会议(Meeting)则成为了医疗领域中一颗璀璨的明星,为医疗行…

Cacti SQL注入漏洞分析(CVE-2023-51448)

Cacti 为全球用户提供强大且可扩展的运营监控和故障管理框架。它还是一个完整的网络绘图解决方案,旨在利用RRDTool的数据存储和绘图功能。Cacti 包括一个完全分布式和容错的数据收集框架、用于设备、图表和树的高级基于模板的自动化功能、多种数据采集方法、通过插件…

自然语言处理系列三十三》 语义相似度》同义词词林》算法原理

注:此文章内容均节选自充电了么创始人,CEO兼CTO陈敬雷老师的新书《自然语言处理原理与实战》(人工智能科学与技术丛书)【陈敬雷编著】【清华大学出版社】 文章目录 自然语言处理系列三十三同义词词林算法原理代码实战 总结 自然语…

软件测试面试题整理(一)之自动化测试题大合集

1 什么是POM,为什么要使用它? POM是Page Object Model的简称,它是一种设计思想,而不是框架。大概的意思是,把一个一个页面,当做一个对象,页面的元素和元素之间操作方法就是页面对象的属性和行为…

甘肃旅游服务平台代码--论文pf

TOC springboot422甘肃旅游服务平台代码--论文pf 绪论 1.1 研究背景 现在大家正处于互联网加的时代,这个时代它就是一个信息内容无比丰富,信息处理与管理变得越加高效的网络化的时代,这个时代让大家的生活不仅变得更加地便利化&#xff0…

基于java的养老服务系统/基于web的养老院管理系统

摘要 随着科学技术的飞速发展,社会的方方面面、各行各业都在努力与现代的先进技术接轨,通过科技手段来提高自身的优势,养老服务当然也不能排除在外,从健康体检、体检预约的统计和分析,在过程中会产生大量的、各种各样的…

WLAN射频调优

射频调优的基本原则 信道优化的基本原则 2.4G射频在非高密部署场景中推荐采用1、6、11这种3个不重叠的信道进行规划,同理也可以选用2、7、12或3、8、13的组合方式;在高密部署场景中则推荐采用1、5、9、13共4个信道组合进行规划。5G射频推荐采用36、40、…

【二分查找】--- 进阶题目赏析

Welcome to 9ilks Code World (๑•́ ₃ •̀๑) 个人主页: 9ilk (๑•́ ₃ •̀๑) 文章专栏: 算法Journey 本篇博客我们继续来了解一些有关二分查找算法的进阶题目。 🏠 寻找峰值 📌 题目内容 162. 寻找峰值 - 力扣&#…

使用QGraphicsView思想做一个简单图片查看器

使用QGraphicsView思想做一个简单图片查看器 如果要做一个图片查看器,支持放大、滚动操作,比较直接的方法是,使用QWidget来显示完整图片,将QWidget放入QScrollArea。缩放时调整QWidget的尺寸,QScrollArea会自动调整滚…

C++_基本语法笔记_仿函数和算法接口

函数对象 概念和使用 切记:仿函数,本质是一个类因为是一个类,所以要把operator() 放在一个类里面 像普通函数(需要通过某个类使用)一样使用,并且有返回值: 内置当前函数对象的状态&#xff1…