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

~

相关内容

热门资讯

安卓4.4系统tv软件,探索安... 亲爱的读者们,你是否曾为家里的电视屏幕增添一些智能的魔力而烦恼?别担心,今天我要给你带来一个超级实用...
安卓系统的研究人物,安卓系统发... 你知道吗?在科技飞速发展的今天,安卓系统可是占据了智能手机市场的大半壁江山。而在这片广阔的天地里,有...
山寨苹果刷会安卓系统,安卓系统... 你知道吗?在科技圈里,总有一些让人眼前一亮的小秘密。今天,我要给你揭秘一个关于山寨苹果刷安卓系统的神...
安卓系统新用户登录,畅享智能生... 你刚刚入手了一台全新的安卓手机,是不是有点小激动呢?别急,别急,让我来给你详细介绍一下安卓系统新用户...
安卓8.0系统推荐版本,体验流... 你有没有发现,手机系统更新换代的速度简直就像小孩子的成长一样快?这不,安卓8.0系统已经悄悄地来到了...
安卓系统怎么分享位置吗,一键操... 你是不是也有过这样的经历:和朋友约好见面,却因为找不到对方而急得团团转?别担心,今天就来教你怎么在安...
安卓系统更新加速器,畅享极速升... 你有没有发现,手机更新系统的时候总是慢吞吞的,让人等得心痒痒?别急,今天就来给你安利一款神器——安卓...
百答系统和安卓系统区别,差异解... 你有没有想过,为什么你的手机里装了那么多应用,却还是觉得信息不够全面?其实,这背后的大脑——操作系统...
安卓锁系统设置软件,软件设置与... 手机里的秘密可多了去了,是不是有时候你也会觉得,这手机里的信息要是被别人看到了可怎么办呢?别担心,今...
安卓电视u盘游戏系统,轻松畅享... 你有没有想过,家里的安卓电视也能玩上那些刺激的电脑游戏呢?没错,就是那种让你一玩就停不下来的游戏!今...
挂载安卓系统为读写权限,读写权... 你有没有想过,你的手机里那些神奇的安卓系统,竟然可以赋予某些应用读写权限?这听起来是不是有点像科幻电...
安卓12系统怎么打补丁,保障设... 亲爱的安卓用户们,你是否也遇到了系统卡顿、bug频发的小烦恼呢?别急,今天就来给你支个招——安卓12...
客厅电脑用安卓系统好吗,体验智... 亲爱的读者,你是不是在为客厅电脑选择操作系统而烦恼呢?安卓系统,这个我们日常手机上常见的操作系统,是...
安卓系统能看访客记录,轻松查看... 你有没有想过,你的安卓手机里藏着一个小秘密?没错,就是访客记录!是的,你没听错,你的手机里竟然能查看...
印度安卓系统电脑推荐,性能卓越... 你有没有想过,在印度这片神奇的土地上,用一台安卓系统电脑会是怎样的体验呢?想象阳光洒在泰姬陵的白色大...
安卓系统合作公司,安卓系统合作... 你知道吗?在科技的世界里,安卓系统可是个超级明星呢!它不仅拥有庞大的用户群体,还吸引了一大批合作公司...
苹果表有安卓系统时间,时间同步... 你有没有发现,最近苹果表也开始支持安卓系统了?没错,就是那个一直以封闭著称的苹果,竟然也开始拥抱安卓...
原生安卓系统裁剪图片,原生安卓... 你有没有发现,用原生安卓系统拍照,有时候拍出来的照片分辨率超高,但就是有点大,想裁剪却不知道怎么操作...
安卓系统蓝牙开关APP,安卓系... 你有没有遇到过这种情况:手机里的安卓系统蓝牙开关总是让人摸不着头脑?有时候想开蓝牙,却找不到开关在哪...
安卓系统能登录ios系统王者吗... 你有没有想过,安卓系的手机能不能登录iOS系统的王者荣耀呢?这可是个让人好奇不已的问题哦!毕竟,两个...