当前位置: 首页 > news >正文

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

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

在这里插入图片描述

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

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

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

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

#!/bin/bash# 定义要创建的目录
DIRECTORY="/usr/local/src/wanghui"# 检查目录是否已经存在
if [ -d "$DIRECTORY" ]; thenecho "目录 $DIRECTORY 已经存在."
else# 创建目录mkdir -p "$DIRECTORY"# 检查是否创建成功if [ -d "$DIRECTORY" ]; thenecho "目录 $DIRECTORY 已成功创建."elseecho "目录 $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 更灵活和强大,特别是在需要精细的时间控制时。

相关文章:

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

Centos系统中创建定时器完成定时任务 时间不一定能证明很多东西,但是一定能看透很多东西,坚信自己的选择,不动摇,使劲跑,明天会更好。 在 CentOS 上,可以使用 systemd 定时器来创建一个每十秒执行一次的任务…...

WLAN基础知识(1)

WLAN: 无线局域网,无线技术:Wi-Fi、红外、蓝牙等 WLAN设备: 胖AP: 适用于家庭等小型网络,可独立配置,如:家用Wi-Fi路由器 瘦AP: 适用于大中型企业,需要配合AC…...

网络安全实训第三天(文件上传、SQL注入漏洞)

1 文件上传漏洞 准备一句话文件wjr.php.png,进入到更换头像的界面,使用BP拦截选择文件的请求 拦截到请求后将wjr.php.png修改为wjr.php,进行转发 由上图可以查看到上传目录为网站目录下的upload/avator,查看是否上传成功 使用时间戳在线工具…...

Nginx 学习之 配置支持 IPV6 地址

目录 搭建并测试1. 下载 NG 安装包2. 安装编译工具及库文件3. 上传并解压安装包4. 编译5. 安装6. 修改配置7. 启动 NG8. 查看 IP 地址9. 测试 IP 地址9.1. 测试 IPV4 地址9.2. 测试 IPV6 地址 IPV6 测试失败原因1. curl: [globbing] error: bad range specification after pos …...

springboot+伊犁地区游客小助手-小程序—计算机毕业设计源码无偿分享需要私信20888

摘 要 提起伊犁,很多人常说,不去新疆,你就不知道中国有多美,不去伊犁,你就不知道新疆有多美。在这里你可以看到中国最美的景色。如果可可托海海是一个野性和粗犷的战士,那么那拉提一定是一个温柔和玉般的绅…...

提升工作效率的五大神器

在这个信息爆炸、节奏加速的时代,高效工作已经成为了职场人士追求的目标。如何在短时间内完成更多的工作任务,同时保持高质量的输出?答案在于合理利用工具。以下是五个能够显著提升工作效率的软件推荐,它们各自在任务管理、团队协…...

想投资现货黄金?在TMGM开户需要多少钱?

最近,越来越多的人开始关注黄金投资,希望通过黄金来对冲风险、保值增值。而选择一家可靠的交易平台是进行黄金投资的第一步。TMGM作为全球知名的外汇交易商,也为投资者提供了黄金交易服务。那么,在TMGM开户投资黄金,需…...

“零拷贝”

1、python利用0拷贝提高效率 在Python中,“零拷贝”(Zero-Copy)通常是指一种数据处理技术,它允许数据从一个地方传输到另一个地方而不需要创建额外的数据副本。这可以显著减少内存带宽的使用并提高性能,尤其是在处理大…...

[ABC367C] Enumerate Sequences 题解

[ABC367C] Enumerate Sequences 搜索。 考虑使用 DFS 深搜,对于第 i i i 个数,从 1 1 1 到 r i r_i ri​ 枚举,将 a i a_i ai​ 设为当前枚举的数,并进行下一层递归。 对所有的数填完后,判断当前和是否为 k k …...

C语言 | Leetcode C语言题解之第336题回文对

题目&#xff1a; 题解&#xff1a; #define SIZE 9470 #define N 168000 #define P 13331typedef unsigned long long ULL; ULL p[301];//p[i]存储P^ivoid init()//初始化p进制次幂数组 {int i;p[0]1;for(i1;i<300;i){p[i]p[i-1]*P;} }int** palindromePairs(char**words,…...

【SQL】仅出现一次的最大数据

目录 题目 分析 代码 题目 MyNumbers 表&#xff1a; ------------------- | Column Name | Type | ------------------- | num | int | ------------------- 该表可能包含重复项&#xff08;换句话说&#xff0c;在SQL中&#xff0c;该表没有主键&#xff09;。…...

MySQL 数据类型详解及SQL语言分类-DDL篇

在数据库开发中&#xff0c;选择合适的数据类型和理解SQL语言的分类是非常重要的。今天详细介绍MySQL中的数据类型&#xff0c;包括数值类型、字符串类型和日期类型&#xff0c;并解释SQL语言的四大分类&#xff1a;DDL、DML、DQL和DCL。 1.MySQL 数据类型 SQL语言是不区分大…...

Leet Code 128-最长连续序列【Java】【哈希法】

给定一个未排序的整数数组 nums &#xff0c;找出数字连续的最长序列&#xff08;不要求序列元素在原数组中连续&#xff09;的长度。 请你设计并实现时间复杂度为 O(n) 的算法解决此问题。 示例 1&#xff1a; 输入&#xff1a;nums [100,4,200,1,3,2] 输出&#xff1a;4 …...

网络协议(概念版)

通讯&#xff1a;首先要得知对方的IP地址。 最终是根据MAC地址&#xff08;网卡地址&#xff09;&#xff0c;输送数据到网卡&#xff0c;被网卡接收。 如果网卡发现数据的目标MAC地址是自己&#xff0c;就会将数据传递给上一层进行处理;如果目标MAC地址不是自己&#xff0c;…...

Pulsar官方文档学习笔记——消息机制

pulsar 基于3.x最新官方文档学习记录 概念与架构 典型的推送订阅模式。生产者发送消息&#xff0c;消费者订阅topic消费信息并回应ACK。订阅创建后&#xff0c;Pulsar会保留所有消息。仅消息被所有订阅 成功消费了才会丢弃&#xff08;可以配置消息保留机制保留一定量&#…...

PyTorch--残差网络(ResNet)在CIFAR-10数据集进行图像分类

完整代码 import torch import torch.nn as nn import torchvision import torchvision.transforms as transforms# Device configuration device torch.device(cuda if torch.cuda.is_available() else cpu)# Hyper-parameters num_epochs 80 batch_size 100 learning_rate…...

ETAS工具链自动化实战指南<一>

----自动化不仅是一种技术&#xff0c;更是一种思维方式&#xff0c;它将帮助我们在快节奏的工作环境中保持领先&#xff01; 目录 往期推荐 场景一&#xff1a;SWC 之间 port自动连接 命令示例 参数说明 场景二&#xff1a;SWC与ECU 自动映射 命令示例 参数说明 场景三&…...

疫情期间我面试了13家企业软件测试岗位,一些面试题整理

项目的测试流程 拿到需求文档后&#xff0c;写测试用例 审核测试用例 等待开发包 部署测试环境 冒烟测试&#xff08;网页架构图&#xff09; 页面初始化测试&#xff08;查看数据库中的数据内容和页面展示的内容是否一致&#xff0c;并且是否按照某些顺序排列&#xff09…...

PINCE——Linux 原生游戏内存修改器,一款替代 Cheat Engine 的强大游戏修改器,Linux 游戏玩家必备神器!

PINCE——Linux 原生游戏内存修改器&#xff0c;一款替代 Cheat Engine 的强大游戏修改器&#xff0c;Linux 游戏玩家必备神器&#xff01; PINCE 是 GNU Project Debugger(GDB) 的前端/反向工程工具&#xff0c;常用作程序调试器&#xff0c;主要用于游戏领域&#xff0c;修改…...

为IntelliJ IDEA安装插件

安装插件 插件是开发工具的扩展程序&#xff0c;通常由第三方提供&#xff0c;当安装了插件后&#xff0c;原开发工作的菜单、按钮等开发环境可能会发生变化&#xff0c;例如出现了新的菜单项&#xff0c;或出现了新的按钮&#xff0c;甚至一些全新的编码方式&#xff0c;通常…...

重塑暗黑2单机体验:d2s-editor 3大革新功能与技术解析

重塑暗黑2单机体验&#xff1a;d2s-editor 3大革新功能与技术解析 【免费下载链接】d2s-editor 项目地址: https://gitcode.com/gh_mirrors/d2/d2s-editor d2s-editor 是一款开源的暗黑2存档编辑工具&#xff0c;通过直观的图形界面实现角色属性调整、装备管理和高级合…...

记录一次bug:不可见字符/零宽字符

1. 现象在处理 CSV 文件导入时&#xff0c;你可能遇到过这种“灵异事件”&#xff1a;CSV 文件第一列叫 tag_id。程序用 encoding/csv 读进 Map 后&#xff0c;尝试用 mp["tag_id"] 取值。结果&#xff1a; 永远返回空值&#xff0c;但打印整个 Map 时&#xff0c;肉…...

2026 AI工具选型实录:六大场景下的模型对比与效率实测

AI正在成为新一代生产力工具2026年的AI工具市场&#xff0c;已经从"谁参数大"的竞争&#xff0c;转向了"谁真正能落地提效"的比拼。一个明显的信号&#xff1a;CSDN上关于AI编程工具选型的讨论热度&#xff0c;从去年的"要不要用"变成了"用…...

m3u8视频下载终极指南:轻松获取加密流媒体内容的完整解决方案

m3u8视频下载终极指南&#xff1a;轻松获取加密流媒体内容的完整解决方案 【免费下载链接】m3u8_downloader 项目地址: https://gitcode.com/gh_mirrors/m3/m3u8_downloader 还在为无法保存在线视频而烦恼吗&#xff1f;m3u8_downloader项目为你提供了简单快速的解决方…...

AI 编程盛行的时代,为什么 “『DC- WFW』” 仍然具有必要性?

AI训练存储选型的演进路线 第一阶段&#xff1a;单机直连时代 早期的深度学习数据集较小&#xff0c;模型训练通常在单台服务器或单张GPU卡上完成。此时直接将数据存储在训练机器的本地NVMe SSD/HDD上。 其优势在于IO延迟最低&#xff0c;吞吐量极高&#xff0c;也就是“数据离…...

3大核心功能解锁QtScrcpy:实现跨平台Android设备高效控制

3大核心功能解锁QtScrcpy&#xff1a;实现跨平台Android设备高效控制 【免费下载链接】QtScrcpy Android real-time display control software 项目地址: https://gitcode.com/GitHub_Trending/qt/QtScrcpy QtScrcpy是一款开源的跨平台Android实时显示与控制工具&#x…...

3步上手AssetStudio:从Unity游戏资源提取到格式转换全攻略

3步上手AssetStudio&#xff1a;从Unity游戏资源提取到格式转换全攻略 【免费下载链接】AssetStudio AssetStudio - Based on the archived Perfares AssetStudio, I continue Perfares work to keep AssetStudio up-to-date, with support for new Unity versions and additio…...

MogFace-large模型版本管理实践:使用Docker镜像实现环境一致性

MogFace-large模型版本管理实践&#xff1a;使用Docker镜像实现环境一致性 你是不是也遇到过这样的场景&#xff1f;在本地电脑上跑得好好的MogFace-large人脸检测模型&#xff0c;一放到同事的机器或者服务器上&#xff0c;就各种报错&#xff1a;CUDA版本不对、Python包冲突…...

当你的手柄在Windows上“水土不服“时,内核级虚拟化如何解决问题?

当你的手柄在Windows上"水土不服"时&#xff0c;内核级虚拟化如何解决问题&#xff1f; 【免费下载链接】ViGEmBus Windows kernel-mode driver emulating well-known USB game controllers. 项目地址: https://gitcode.com/gh_mirrors/vi/ViGEmBus 你是否曾经…...

OpenClaw自动化测试:Qwen3.5-9B持续集成实践

OpenClaw自动化测试&#xff1a;Qwen3.5-9B持续集成实践 1. 为什么选择OpenClaw做自动化测试 去年我在迭代一个NLP模型时&#xff0c;每次代码提交后都需要手动跑测试用例、截图对比结果、再发邮件给团队——这套流程每周要重复十几次。直到发现OpenClaw这个"能操作电脑…...