Linux之计划任务

Linux计划任务 那么,创建这个计划任务时是几点几分,例如,这里是在19点11分创建的at计划任务,那么到了2024年11月11日的19点11分就要自动执行hostname命令了。每天都会执行一次/etc/crondaily中的脚本,每小时都会执行一次/etc/cron.hourly中的脚本,每月都会执行一次/etc/cron.monthly中的脚本,每周都会执行一次/etc/cron.weekly中的脚本。在tom既出现在/etc/cron.allow中,又出现在/etx/cron.deny中,命令如下。 阅读详情

计划任务

操作内容:计划任务的查询(atq、at -c 号码)、新增(at 时间)、删除atrm。

计划任务的主要参数:什么时间,执行什么任务。想一下你在手机上定闹钟会做些什么操作?

有经验的系统运维工程师能够让系统自动化运行,无需人工的干预就可以让各个服务、命令在指定的时间段运行、停止。

实际上这些操作都是由系统的计划任务功能完成的,而计划任务又分为“一次性”与“长期性”之分。

如果某个命令仅仅要执行一次,那么可以使用at命令,这个指令实际上就是atd这个服务,所以一定要启动这个服务基本上at是默认打开的,输入at这个动作会将工作流写入/var/spool/at这个目录,然后等待系统执行他,此外,at是默认所有人都能之执行,使用/ect/at.allow(白名单)和/etc/at.deny(黑名单)可以进行限制。

一次性调度执行at

作用: 计划任务主要是做一些周期性的任务,目前最主要的用途是定期备份数据

参数 作用
man at 查看at命令的帮助文档
at <时间> 安排一次性任务
at <时间> -f 文件名 -f是file的缩写,在指定的时间执行“文件中的命令”
atq或at -l 查看任务列表
at -c 序号 预览任务与运行环境
atrm 序号 删除任务

[root@ever ~]# yum -y install at

[root@ever ~]# systemctl start atd

[root@ever ~]# systemctl enable atd

语法格式:

at

now +5min

teatime tomorrow (teatime is 16:00)

noon +4 days

5pm august 3 2018

[root@ever ~]# at now +1min

at> useradd uuuu

at>

job 1 at Sat Mar 21 22:34:00 2015

[root@yang ~]# atq

3 Thu Mar 30 09:55:00 2017 a root

[root@ever ~]# id uuuu

删除at的一次性计划任务

[root@kvm1 ~]# atrm 2

[root@kvm1 ~]# rm -rf /var/spool/at/a0000301861c20

[root@yang ~]# vim at.jobs

useradd u99

useradd u00

touch /date +%F.txt

[root@yang ~]# at now +1min < at.jobs

[root@ever ~]# useradd jack -G wheel

[root@ever ~]# visudo

Allows people in group wheel to run all commands

%wheel ALL=(ALL) ALL

Same thing without a password

%wheel ALL=(ALL) NOPASSWD: ALL

[root@ever ~]# su - jack

[jack@ever ~]$ sudo useradd yy

以sudo 用户jack创建at任务

[jack@ever ~]$ vim jack.at

sudo useradd u200

sudo useradd u300

sudo touch /home/date +%F_jack.txt

[jack@ever ~]$ at now +1min < jack.at

注: sudo执行需要考虑tty问题,没有终端不执行

[root@ever ~]# visudo

Defaults !visiblepw

at中的Time时间表示方法

时间 例子 说明

Minute:at now +5 minutes 任务在5分钟后运行

Hour: at now +1 hour 任务在1小时后运行

Days: at now +3 days 任务在3天后运行

Weeks: at now +2 weeks 任务在两周后运行

Fixed: at midnight 任务在午夜运行

Fixed: at 10:30pm 任务在晚上10点30分开始

Fixed: at 1:00 12/20/2004 任务在2004年12月20日凌晨1点开始

Fixed

: at 1:00 2017-05-03 任务在2017年05月03日凌晨1点开始

直接用echo语句将要执行的命令传送给at命令:

[root@sky ~]# echo “systemctl start httpd” | at 23:30

job 4 at Mon Apr 27 23:30:00 2015

循环调度执行cron 用户级

[root@tianyun ~]# systemctl status crond.service

[root@tianyun ~]# ps aux |grep crond

root 550 0.0 0.0 126300 1648 ? Ss 10:05 0:00 /usr/sbin/crond -n

crond进程每分钟会处理一次计划任务

=用户级=

存储位置:

[root@ever ~]# ls /var/spool/cron/

管理方式:

crontab -l List the jobs for the current user.

crontab -r Remove all jobs for the current users.

crontab -e Edit jobs for the current user.

管理员可以使用 -u username, 去管理其他用户的计划任务

/etc/cron.deny:

alice

jack

[alice@yang ~]$ crontab -e

You (alice) are not allowed to use this program (crontab)

See crontab(1) for more information

语法格式 Job format:

Minutes Hours Day-of-Month Month Day-of-Week Command

Example of job definition:

.---------------- minute (0 - 59)

| .------------- hour (0 - 23)

| | .---------- day of month (1 - 31)

| | | .------- month (1 - 12) OR jan,feb,mar,apr …

| | | | .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat

| | | | |

0 2 * * * /mysql_back.sh

0 2 14 * * /mysql_back.sh

0 2 14 2 * /mysql_back.sh

0 2 * * 5 /mysql_back.sh

0 2 * 6 5 /mysql_back.sh

0 2 2 * 5 /mysql_back.sh

0 2 2 6 5 /mysql_back.sh

*/5 * * * * /mysql_back.sh

0 2 1,4,6 * * /mysql_back.sh

0 2 5-9 * * /mysql_back.sh

循环调度执行cron 系统级

临时文件的清理 /tmp /var/tmp

系统信息的采集 sar

日志的轮转(切割)logrotate

通常不是由用户定义

定义位置一:

[root@ever ~]# vim /etc/crontab //该文件中默认没有定义任何计划任务

***** user-name command to be executed

定义位置二:/etc/cron.d/*

[root@ever ~]# ls /etc/cron.d

0hourly raid-check sysstat

[root@ever ~]# cat /etc/cron.d/0hourly //该文件中定义的计划任务每小时会执行

01 * * * * root run-parts /etc/cron.hourly //每小时01分以root用户执行/etc/cron.hourly目录下

所有脚本

crond: 仅仅会执行每小时定义的脚本 /etc/cron.hourly

每小时具体执行哪些脚本:

[root@ever ~]# ls /etc/cron.hourly/

0anacron 0yum-hourly.cron

[root@ever ~]# cat /etc/cron.hourly/0anacron

/usr/sbin/anacron -s

[root@ever ~]# vim /etc/anacrontab //该文件是anacron执行调用的文件

period in days delay in minutes job-identifier command

1 5 cron.daily nice run-parts /etc/cron.daily

7 25 cron.weekly nice run-parts /etc/cron.weekly

@monthly 45 cron.monthly nice run-parts /etc/cron.monthly

[root@yang ~]# ls /etc/cron.daily/

0yum-daily.cron logrotate man-db.cron mlocate

[root@yang ~]# ls /etc/cron.weekly/

[root@yang ~]# ls /etc/cron.monthly/

[root@ever ~]# ls /var/spool/anacron/

cron.daily cron.monthly cron.weekly

[root@ever ~]# cat /var/spool/anacron/cron.monthly

20170321

=cron log=

[root@ever ~]# tail /var/log/cron

Mar 29 20:01:01 tianyun run-parts(/etc/cron.hourly)[22456]: finished 0anacron

Mar 29 20:01:01 tianyun run-parts(/etc/cron.hourly)[22447]: starting 0yum-hourly.cron

Mar 29 20:01:01 tianyun run-parts(/etc/cron.hourly)[22462]: finished 0yum-hourly.cron

Mar 29 20:10:01 tianyun CROND[22563]: (root) CMD (/usr/lib64/sa/sa1 1 1)

Mar 29 20:20:01 tianyun CROND[22688]: (root) CMD (/usr/lib64/sa/sa1 1 1)

Mar 30 09:05:31 yang crond[1399]: (CRON) INFO (Syslog will be used instead of sendmail.)

Mar 30 09:05:31 yang crond[1399]: (CRON) INFO (RANDOM_DELAY will be scaled with factor 15% if

used.)

Mar 30 09:05:31 yang crond[1399]: (CRON) INFO (running with inotify support)

Mar 30 09:10:01 yang CROND[1924]: (root) CMD (/usr/lib64/sa/sa1 1 1)

Mar 30 09:20:01 yang CROND[2109]: (root) CMD (/usr/lib64/sa/sa1 1 1)

创建周期性计划任务

对于创建长期可循环的计划任务,则要用到cron服务,具体使用方法如下:

创建、编辑、删除某个计划任务:crontab -e [-u 用户名]

查看计划任务:crontab -l [-u 用户名]

删除所有的计划任务:crontab -r [-u 用户名]

字段 说明
分钟 取值为从0到59之间的整数
小时 取值为从0到23之间的任意整数
日期 取值为1到31之间的任意整数
月份 取值为1到12之间的任意整数
星期 取值为0到7之间的任意整数,其中0与7均为星期日
命令 要执行的命令或程序脚本
特殊的时间符号 1-5 减号表示一个连续的范围,如果此数字出现在分钟,那么就是1~5分钟执行任务 1,6,9 逗号表示不连续的范围,此处表示第1、6、9分钟会执行任务。 * 表示每时每刻执行此任务。 / 计划执行的间隔频率。如分钟里出现*/10表示每隔10分钟执行此任务 。

date命令:

用法:date 选项

功能:查看、修改系统时间。查看时间可以指定时间的显示格式。

选项:-s 修改系统时间。如date -s ‘20190214 14:30’

格式代号:+%F 以2019-01-10(YYYY-MM-DD)格式来显示时间,
等价于 %Y-%m-%d

%Y 年份

%m month (01…12)

%d 按月计的日期(例如:01)

%H 小时(00-23)

%I 小时(00-12)

%M minute (00…59)

date +%F

date +%Y-%m-%d_%H:%M

touch date +%F.txt 创建名称为年-月-日的文件

touch $(date +%F) .txt

touch date +%Y-%m-%d_%H:%M.jpg 年月日小时:分的jpg文件

tar -czvf /opt/date +%F_%H:%M.tar.gz /etc/host*

Linux 计划任务详解 系统服务计划任务是一种让系统在指定的时间点或周期执行某些任务(程序)的功能。不同的操作系统有不同的系统服务计划任务的实现方式。 阅读详情

相关推荐

Linux系统计划任务

crond计划任务 一 定时任务介绍 ​ 1、什么是定时任务? 设定某个日期或时间周期性执行指令。比如设定一个闹铃,叫你每天早上7点钟起床等,这就是一个定时任务。 ​ 2、什么是Crond? Crond是Linux系统中用来定期执行命令或脚本的一种服务软件,一般情况下,我们安装完CentOS操作系统之后,默认便会启动Crond任务调度服务。 Crond服务会定期(默认每分钟检查一次)检查系统中是否有要执行的任务工作,如果有,便会根据其预先设定的定时任务规则自动执行该定时任务工作,这个Crond定

徐中祥的博客 1121

linux常见命令之--定时任务

定时任务 1、at 1.1、语法格式:at 时间 1.2、atd服务的相关操作(开启start|关闭/停止stop|重启restart|启动状态查看status|开机自启动状态查看is-enabled|设置开机自启动enable|开机禁止自启动disable) [root@localhost ~]# systemctl stop atd #关闭/停止atd服务 [root@localhost ~]# systemctl start atd #开启atd服务 [root@localh

qq_37867279的博客 1325

Linux 周期性计划任务 crontab

Linux 周期性计划任务 crontab

xiaotongzhi_w的博客 4315

【9.29】日常运维——系统管理

10.23 linux任务计划cron 10.24 chkconfig工具 10.25 systemd管理服务 10.26 unit介绍 10.27 target介绍

张森纳的博客 1190

Proteus 8.17安装部署全指南:避坑、汉化与STM32库配置

Proteus是一款广泛用于单片机仿真与电路设计的EDA工具,其核心价值在于支持嵌入式系统原型验证与教学实践。Proteus 8.17版本重构了许可证机制(LIC Engine)、依赖环境(VC++ 2019/NET 4.8)及路径加载逻辑,导致传统安装方法失效。掌握正确安装部署流程,是保障原理图绘制、VSM仿真(如51/STM32/ESP32)及外设波形观测(OLED、SPI、ADC)稳定运行的前提。本文聚焦Windows平台下零失败安装路径选择、权限配置、汉化实施与高频器件(如STM32F103)元件库

weixin_33377602的博客 403

STM32F103C8T6实战:从零搭建三相SPWM逆变器(附MATLAB仿真、PCB、源码)

本文详细介绍了如何使用STM32F103C8T6单片机从零搭建三相SPWM逆变器,涵盖硬件选型、PCB设计、SPWM算法实现及MATLAB仿真。项目提供完整的工程文件,包括源码、PCB设计和仿真模型,适合电子工程师和学生进行实践学习。通过本教程,读者可以掌握逆变器设计的核心技术和调试方法。

weixin_30458043的博客 455

Linux定时任务crontab

Liunx定时任务个人记录使用,仅供参考。 系统环境Centos7.5 1、启动crond服务 说明:crontab定时任务需要启动crond 服务才可以使用。 [root@db01 ~]# systemctl start crond [root@db01 ~]# systemctl status crond ● crond.service - Command Scheduler Loaded: loaded (/usr/lib/systemd/system/crond.service; enable

qq_26400011的博客 543

AI工作流革命:从n8n到Sora2,揭秘自动化视频创作的底层逻辑

本文深入探讨了AI工作流在自动化视频创作中的应用,重点介绍了n8n、Coze和Sora2的组合如何实现从链接输入到视频输出的全流程自动化。通过三层架构解析、关键技术模块优化及成本控制策略,这套方案显著提升了视频生产效率,适用于电商、热点追踪等多种场景。

gg901的博客 1090

解决crontab 定时任务加载失败

0x0 系统:centos7 内核:3.10.0-1160.15.2.el7.x86_64 今天用crontab创建定时任务,在测试时发现任务并没有按预期执行, 使用systemctl status crond 查看crond的状态 > # systemctl status crond ● crond.service - C

光明顶魔教工程师 3449

【线粒体基因组数据提交实战】从注释校验到GenBank批量入库的避坑指南

本文详细介绍了线粒体基因组数据从注释校验到GenBank批量上传的全流程避坑指南。重点解析了GB2sequin工具的正确使用方法、TBL注释文件的精修技巧,以及BankIt平台提交的隐藏要点,帮助科研人员高效完成NCBI数据提交,特别适合需要批量上传线粒体基因组数据的研究者。

weixin_28726671的博客 445

如何利用CANoe在两路CAN通道之间创建网关(gateway)

CANoe网关,利用CAPL实现CAN转发

Richy_Lai的博客 7902

Linux 命令之 crontab 定时计划

1、简介crontab命令用于设置周期性被执行的指令。该命令从标准输入设备读取指令,并将其存放于“crontab”文件中,以供之后读取和执行cron 系统调度进程。可以使用它在每天的非高...

yunweimao的博客 1183

STM32寄存器级电机驱动:DRV8833 H桥与PWM调速原理

电机驱动是嵌入式控制系统的核心基础能力,其本质是微控制器通过数字信号精确控制功率器件的开关时序。理解H桥电路结构、反电动势防护机制及PWM调制原理,是实现可靠直流电机控制的前提。DRV8833作为典型双H桥驱动芯片,支持快衰减与慢衰减两种PWM调速模式,分别对应不同的电流泄放路径与动态响应特性。在STM32平台上,需结合时钟树配置、GPIO复用、定时器寄存器(PSC/ARR/CCR)精确计算,将抽象的转速需求转化为可执行的硬件操作。该技术广泛应用于智能小车、机器人关节、工业定位系统等实时运动控制场景,是掌握

weixin_42613017的博客 680

Linux 计划任务

root@localhost ~]# at 6:00 pm +3 days #在 3 天以后的下午 6 点执行。[root@ localhost ~]# at 17:00 tomorrow #明天下午 5 点执行。[root@ localhost ~]# at now +10min #在 10 分钟后执行。cron 是一个 linux 下的定时执行工具,可以在无需人工干预的情况下周期性的运行方式。[root@ localhost ~]# at 20:00 2018-10-1 #某天。

2202_75529223的博客 3672

科研ABC - The Results Section(SCI论文写作补充)

1 前言 1.1 IMRD格式 1.2 Results部分意义 1.3 Results部分主要内容 2 Results & Discussion关系 2.1 Results & Discussion部分的搭配方式 2.2 Results & Discussion部分的区分 3 Results部分的结构 3.1 Move 1: Set the Stage 3.1....

洋洋洋2020的blog 1622

uni-app开发-第3篇:uni-app 页面与路由

本文详细介绍了 uni-app 中的页面开发与路由管理。首先,页面是应用的基础单元,创建页面时需在pages目录下新建文件夹和.vue文件,页面结构由<template>、<script>和<style>三部分组成。uni-app 页面生命周期函数包括onShow、onReady、onHide和onUnload,分别用于处理页面显示、渲染完成、隐藏和卸载时的逻辑。其次,路由管理通过pages.json文件配置页面路径和样式,并提供uni.navigateTo等方法进行路由

无 419

linux计划任务详解,Linux计划任务详解

计划任务是系统的常见功能,利用任务计划功能,可以将任何脚本、程序或文档安排在某个最方便的时间运行。任务计划在每次系统启动的时候启动并在后台运行。在Linux系统中,当我们需要在服务器上定时执行一些重复性的事件时使用的,可以通过Linux计划任务程序来运行准备好的脚本、批处理文件夹、程序或命令,在某个特定的时间运行。计划任务在Linux 中一般使用 Crontab,通过 crontab 命令,我们可...

weixin_36184940的博客 7966

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

linux某用户 计划任务,Linux计划任务管理

Linux计划任务管理前言:在Linux操作系统中,除了用户即时执行的命令操作以外,还可以配置在指定的时间、指定的日期执行预先计划好的系统管理任务(如定期备份、定期采集监测数据)。RHEL6系统中默认已安装了at、cronie软件包,通过atd和crond这两个系统服务实现一次性、周期性计划任务的功能,并分别通过at、crontab命令进行计划任务设置。一、at命令一次性计划任务前提条件:对应的系...

weixin_34430676的博客 1880

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

[Linux] Linux计划任务管理

本文介绍了Linux系统中的计划任务管理,主要包括一次性计划任务和周期性计划任务两种类型。一次性计划任务使用at命令实现,通过atd服务运行,支持时间指定、任务查看和删除等功能。周期性计划任务通过crond服务实现,用户可使用crontab命令管理个人任务,系统管理员则通过/etc/crontab等配置文件管理系统级任务。文章详细说明了两种计划任务的使用方法、时间格式设定、权限控制以及相关配置文件的存放位置和语法规则,为Linux系统管理员提供了完整的计划任务管理指南。

qq_53232485的博客 738

linux计划任务

1.一次性计划任务 at命令 systemctl status atd [root@localhost ~]# at 9:18 at> mkdir -p /tmp/123dir at> <EOT> job 1 at Fri Nov 27 09:18:00 2020 [root@localhost ~]# at -l 1 Fri Nov 27 09:18:00 2020 a root [root@localhost ~]# at now +5 hour at&g

干铮的博客 534

Linux中使用计划任务自动执行

Linux中的计划任务 知识要点 计划任务的意义 计划任务分类 用户计划任务crontab 系统计划任务 计划任务使用注意事项 anacron服务介绍 计划任务的意义 1.计划任务 创建和管理在指定时间自动执行的任务 2.注意事项 要使任务计划在指定时间自动运行,计划任务的服务必须是启动的 3.计划任务分类 使用at命令调用atd进程设置在某个特定的时间...

qq_43028054的博客 4578

linux(计划任务)

一、概念 计划任务就是按照计划定时的去执行任务 二、crond程序--是linux里负责执行计划任务的程序 (1)使用crontab命令调用crond进程 (2)crond程序--每隔一分钟去检查是否有计划任务要执行. 2、crond进程的启动、重启、停止 (1)service crond start--启动 (2)service crond stop--停止==systemctl stop crond (3)service crond restart--重启(先关闭后启动) 三、管理计划

Lanqingli的博客 9321

linux——计划任务

什么是计划任务?提前计划某个时间点做某件事情 --》定时定点去完成某个任务闹铃脚本: 帮助我们去完成某些事情的工具计划任务: 帮助我们去执行脚本不需要人去执行了,提升了工作效率,解放了人力linux 系统则是由 cron (crond) 这个系统服务来控制的。Linux 系统上面原本就有非常多的计划性工作,因此这个系统服务是默认启动的。命令。

ZhouXin1111112的博客 1623

Linux - 计划任务

目录 为什么需要计划任务: linux里的计划任务: 停止crond服务: 开启crond服务: 重启crond服务: 计划任务的格式: 练习: 添加计划任务: 同一时间可以做多个任务吗? 怎么终止计划任务? 怎么知道计划任务是否执行 笔试题目: 每个用户都有自己的计划任务 这个用户没有登录是否计划任务也会执行? root用户是否可以去管理其他用户的计划任务? 如何排查你的机器里是否有黑客添加的计划任务? (笔试题) 计划任务: 按照计划准时准点去执行任务 --》 计划.

qq_48391148的博客 7660
上一篇: Linux之权限管理
下一篇: Linux之软件包管理
Ever_Linux
博客等级 码龄8年 0粉丝 13原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值