linux系统中定时任务和延时任务详解

一、系统延时任务

1.at命令

[root@install-a ~]# at 21:15	##设定任务执行时间为21:15
at> rm -fr /mnt/*				##任务动作
at> 	<< ctrl + d			##用ctrl + d发起任务

linux系统中定时任务和延时任务详解_第1张图片
linux系统中定时任务和延时任务详解_第2张图片

[root@install-a ~]# at now+1min	##延时1分钟
at> touch /mnt/al{1..5}			##任务动作
at> 	<< ctrl + d			##用ctrl + d发起任务

linux系统中定时任务和延时任务详解_第3张图片
linux系统中定时任务和延时任务详解_第4张图片

at -l					##查看任务列表
at -c	任务号			##查看任务内容
at -r	任务号			##取消任务执行

在这里插入图片描述
linux系统中定时任务和延时任务详解_第5张图片
在这里插入图片描述
注意:
当任务有输出时,输出会以邮件的形式发送给该at任务的发起者

mail -u root				##查看超级用户邮件

linux系统中定时任务和延时任务详解_第6张图片
mail的用法

2					##查看第二封邮件
q					##退出mail

linux系统中定时任务和延时任务详解_第7张图片
在这里插入图片描述

> /var/spool/mail/root			##清空root邮件

在这里插入图片描述

2.at创建延时任务的黑白名单

/etc/at.deny	##系统中默认存在,在此文件中出现的用户不能执行at
/etc/at.allow	##系统中默认不存在,当文件出现,/etc/at.deny失效,普通用户不能执行at命令,只有名单中的用户可以执行at

在这里插入图片描述
在这里插入图片描述
linux系统中定时任务和延时任务详解_第8张图片

二、系统定时任务

1.crontab 时间表示方式

*	*	*	*	*		##每分钟
*/2	*	*	*	*		##每隔两分钟
*/2	09-17	*	*	*	##每天的9点到17点,每隔两分钟
*/2	*/2	*	*	*		##每隔两小时,每两分钟
*/2	09-17	3,5	1	5	##1月的3号和5号,每周5,9点到17点每两分钟
*/2	09-17	*	*	5	##每周5的9点到17点,每隔两分钟

2.系统控制crontab的服务

crond.service ##当程序开启时定时任务生效

systemctl status crond.service		

linux系统中定时任务和延时任务详解_第9张图片

3.crontab命令

crontab -e -u	用户名	##编写定时任务,文件保存在/var/spool/cron/用户名 下,不加-u 默认为命令行用户,本命令相当于编写/var/spool/cron/用户名文件,解决普通用户不能进入该目录的问题
crontab -l -u	用户名	##查看指定用户文件内容
crontab -r -u	用户名	##删除指定用户文件

linux系统中定时任务和延时任务详解_第10张图片

4.文件方式设定定时任务

vim /etc/cron.d/file	##名字任意,本文件只能由root用户编写,不受黑白名单影响

书写格式

执行时间 执行用户 任务动作
* * * * * root rm -fr /mnt/*

在这里插入图片描述
linux系统中定时任务和延时任务详解_第11张图片

5.crontab的黑白名单(和at的黑白名单用法类似)

/etc/cron.deny		##系统中默认存在,在此文件中出现的用户不能执行crontab
/etc/cron.allow		##系统中默认不存在,当文件出现,/etc/cron.deny文件失效,普通用户不能执行crontab,只有在名单中的用户可以
##这两个名单都不会影响/etc/cron.d/目录中定时任务的发起和执行

linux系统中定时任务和延时任务详解_第12张图片
linux系统中定时任务和延时任务详解_第13张图片

三、系统中临时文件的管理方式

vim /usr/lib/tmpfiles.d/test.conf	##名字自己设定

该文件的编写格式

d /mnt/wop	1777 root root 8s 	##8s内不能被清除

在这里插入图片描述

systemd-tmpfiles --create /usr/lib/tmpfiles.d/wop.conf	##让该文件生效
systemd-tmpfiles --clean  /usr/lib/tmpfiles.d/wop.conf	##清除已超过保护时间的命令

linux系统中定时任务和延时任务详解_第14张图片

你可能感兴趣的:(linux)