linux:计划任务:单一例行性和循环例行性周期任务
创始人
2024-06-02 00:30:55
0

目录

  • 计划任务分类
    • 一,单一性例行的计划任务
      • 例1
      • 知识扩充点
    • 二,循环性的周期任务:
      • 用户的周期性任务
      • 系统的周期性任务
    • 三,案例

计划任务分类

一,单一性例行的计划任务

只执行一次就结束了,一般是用户的延迟任务,可以用命令 at 来执行

在红帽企业版 Linux 中,⽤⼾安排延迟任务,可⽤的解决⽅案之⼀为 at。该软件包提供了 atd 系
统守护进程,以及⼀组与守护进程交互的命令⾏⼯具。在默认情况下,将⾃动安装并启⽤ atd 守
护进程。

使用命令:

at  TIMESPEC(参数)  代表从现在起5分钟之后执行一个任务
⼿动输⼊命令时,你可以按 Ctrl + D 来完成输⼊

TIMESPEC参数与 at 命令可以接受许多强⼤组合。这些组合以时间(例如 02:00、15:59 甚⾄ teatime )开头,后⾯接⼀个可选⽇期或将来的天
数。下⾯列出⼀些可⽤的组合⽰例。

at now +5min
at teatime tomorrow (下午茶时间为 16:00 )
at noon +4 days
at 5pm auguest 3 2023

例1

计划从现在开始1分钟后向所有用户发出 hello

[fu@bogon ~]$ at now +1min
warning: commands will be executed using /bin/sh
at> wall hello
at> 
job 2 at Sat Mar 11 16:51:00 2023

查看当前用户待执行的任务

[fu@bogon ~]$ atq
3	Sat Mar 11 16:53:00 2023 a fu

移除一个待执行任务

[fu@bogon ~]$ atrm 5

知识扩充点

1,at 命令指定的任务的队列是a-z队列,默认是在a队列,-q 参数可以指定队列。其他参数可以看man手

2,在 /var/spool/at 目录下面记载的有对应的待执行的计划任务

3, /etc/cron.deny 文件为不允许使用 at 命令及相关命令的文件,默认这个文件是存在的
/etc/cron.allow 文件与 /etc/cron.deny 文件相反,是允许使用at 及相关命令的文件,默认是不存在的,如果这2 个文件都存在,且在2个文件中都存在相同的用户,则起作用的文件是/etc/cron.allow 文件

[root@bogon ~]# ll /var/spool/
total 0
drwxr-xr-x. 2 root root 63 Mar 11 10:51 anacron
drwx------. 3 root root 31 Mar 11 16:55 at       单一例行的计划任务在这里
drwx------. 2 root root  6 Mar 11 11:07 cron     周期循环的计划任务
drwx--x---. 3 root lp   17 Mar 11 10:52 cups
drwxr-xr-x. 2 root root  6 Aug 10  2021 lpd
drwxrwxr-x. 2 root mail 16 Mar 11 11:02 mail
drwxr-xr-x. 2 root root  6 Feb  1  2022 plymouth
drwxr-xr-x. 3 root root 19 Mar 11 10:52 rhsm

二,循环性的周期任务:

红帽系统默认⾃带了特别针对周期性作业的 crond 守护进程,由 cronie 软件包提供,且默认启动。

crond 守护进程会读取多个配置⽂件(每个⽤⼾对应⼀个配置⽂件,使⽤ crontab 命令进⾏编辑)以及⼀组系统范围内的⽂件。这些配置⽂件使⽤⼾和管理员拥有细微的控制权,可以控制应执⾏周期性作业的时间。

如果计划的命令⽣成了任何未被重定向的输出或者错误,则 crond 守护进程将尝试使⽤系统中配
置的邮件服务器将该输出或错误通过电⼦邮件发送给拥有该作业的⽤⼾(除⾮被覆盖)。根据环
境,这可能需要进⾏其他配置。可以将计划命令的输出或者错误重定向到其他⽂件。

循环性的周期任务有用户的周期性任务以及系统的周期性任务

用户的周期性任务

用户的周期性任务用 crontab -e 命令直接编辑即可
参数的格式:

分 时 日 月 周 命令 要执行的* 表⽰ ⽆关紧要或者始终
x-y 表⽰范围,x 到 y(含)
x,y 表⽰列表。列表也可以包含范围,例如 分钟 列中的 5,10-13,17 表⽰作业应当在每⼩时过去 5 分钟、10 分钟、11 分钟、12 分钟、13 分钟和17 分钟后运⾏
*/x 表⽰ x 的时间间隔,例如 分钟 列中的*/1 表⽰每1分钟运⾏⼀次作业

例:

*/1 * * * * echo 123 >> /home/test.txt      每隔一分钟向 /home/test.txt 文件写入123

相关参数

crontab -l 列出当前⽤⼾的计划作业
crontab -r 删除当前⽤⼾的所有作业
crontab -e 编辑当前⽤⼾的作业
crontab	filename 删除所有作业,并替换为 filename 读取的作业。如果没有指定⽂件, 则使⽤ stdin

系统的周期性任务

/etc/crontab ⽂件的注释中包含了实⽤的语法图。

周期性系统作业在两个位置定义:/etc/crontab ⽂件和 /etc/cron.d/ ⽬录中的⽂件。
要计划周期性系统作业,应始终在 /etc/cron.d ⽬录下创建⾃定义 crontab ⽂件。
通过将⾃定义 crontab ⽂	件放⼊ /etc/cron.d,可以防⽌在 /etc/crontab 的第三⽅软件包更新时将它覆盖。
需要周期性系统作业的软件包会将其 crontab ⽂件放⼊包含作业条⽬的 /etc/cron.d 中。管理员也使⽤此位置
将相关作业组合到单个⽂件中。
crontab 系统中还包含需要每⼩时、每天、每周和每⽉运⾏得脚本的存储库。这些存储库分别对
应于名为 /etc/cron.hourly/、/etc/cron.daily/、/etc/cron.weekly/ 和 /etc/cron.monthly 的⽬
录。这些⽬录中包含可执⾏的 shell 脚本,⽽不是 crontab ⽂件。

⼀个从 /etc/cron.d/0hourly ⽂件调⽤的名为 run-parts 的命令可以运⾏ /etc/cron.hourly/* 脚
本。run-parts 命令也运⾏每⽇、每周和每⽉的作业,但它是从另⼀个名为 /etc/anacrontab 的
配置⽂件调⽤的。

三,案例

1,指定在 2023/12/12 09:00 将时间写入 /testmail.txt 文件中

[root@bogon ~]# at -t 202312120900
warning: commands will be executed using /bin/sh
at> date >> /testmail.txt
at> 
job 6 at Tue Dec 12 09:00:00 2023

2,指定在每天凌晨4:00将该时间点之前的系统日志信息备份到目录下 /var/log/message,备份后日志文件名显示格式 logfileYY-MM-DD HH-MM
命令

00 04 * * * cp /var/log/messages /var/log/logfile`date +\%F-\%R`  | echo logfile`date +\%F-\%R` >> /var/log/messages

~

相关内容

热门资讯

我来教大家“聚友茶楼辅助器ap... 聚友茶楼这个游戏其实有挂的,确实是有挂的,需要了解加客服微信:【7198902】, 很多玩家在这款游...
我来教大家“永州跑胡子辅助器a... 我来教大家“永州跑胡子辅助器app官方下载最新版本更新”详细分享开挂一、永州跑胡子AI软件牌型概率发...
我来教大家“闲游娱乐辅助器ap... 我来教大家“闲游娱乐辅助器app官方下载最新版本更新”详细分享开挂一、闲游娱乐AI软件牌型概率发牌机...
我来教大家“吉祥互娱辅助器ap... 亲,吉祥互娱这款游戏可以开挂的,确实是有挂的,。但是开挂要下载第三方辅助软件,吉祥互娱的开挂软件,名...
我来教大家“威信茶馆辅助器ap... 您好,威信茶馆这款游戏可以开挂的,确实是有挂的,需要了解加微{7198902}很多玩家在这款游戏中打...
我来教大家“姐妹十三水辅助器a... 亲,姐妹十三水这款游戏可以开挂的,确实是有挂的,。但是开挂要下载第三方辅助软件,姐妹十三水的开挂软件...
我来教大家“乐通辅助器app官... 我来教大家“乐通辅助器app官方下载最新版本更新”详细分享开挂;原来确实真的有挂(需添加指定薇719...
我来教大家“圈友望江麻将辅助器... 圈友望江麻将这个游戏其实有挂的,确实是有挂的,需要了解加客服微信:【7198902】, 很多玩家在这...
我来教大家“传奇竞技辅助器ap... 我来教大家“传奇竞技辅助器app官方下载最新版本更新”详细分享开挂;原来确实真的有挂(需添加指定薇7...
我来教大家“云梦司缘辅助器ap... 您好,云梦司缘这款游戏可以开挂的,确实是有挂的,需要了解加微{7198902}很多玩家在这款游戏中打...
我来教大家“情岛乐园辅助器ap... 情岛乐园这个游戏其实有挂的,确实是有挂的,需要了解加客服微信:【7198902】, 很多玩家在这款游...
我来教大家“桂乐广西麻将辅助器... 桂乐广西麻将这个游戏其实有挂的,确实是有挂的,需要了解加客服微信:【7198902】, 很多玩家在这...
我来教大家“川南麻将辅助器ap... 我来教大家“川南麻将辅助器app官方下载最新版本更新”详细分享开挂是一款可以让一直输的玩家,快速成为...
我来教大家“北极熊辅助器app... 您好:北极熊确实真的有挂,软件加微信【7198902】确实是有挂的,很多玩家在这款游戏中打牌都会发现...
我来教大家“忍者辅助器app官... 忍者这个游戏其实有挂的,确实是有挂的,需要了解加客服微信:【7198902】, 很多玩家在这款游戏中...
我来教大家“西瓜优选辅助器ap... 我来教大家“西瓜优选辅助器app官方下载最新版本更新”详细分享开挂1、让任何用户在无需AI插件第三方...
我来教大家“内蒙古王牌麻将辅助... 我来教大家“内蒙古王牌麻将辅助器app官方下载最新版本更新”详细分享开挂是一款可以让一直输的玩家,快...
我来教大家“全民炸金花辅助器a... 我来教大家“全民炸金花辅助器app官方下载最新版本更新”详细分享开挂一、全民炸金花AI软件牌型概率发...
我来教大家“点兵点将辅助器ap... 您好:点兵点将确实真的有挂,软件加微信【7198902】确实是有挂的,很多玩家在这款游戏中打牌都会发...
我来教大家“创游世界辅助器ap... 创游世界这个游戏其实有挂的,确实是有挂的,需要了解加客服微信:【7198902】, 很多玩家在这款游...