Linux系统中的延时与定时任务
一.延时任务
1.at 命令
(1)at time ###表示在某一时间执行命令,如:
我在/mnt/目录下创建了文件,并且用
这条命令表示每隔一秒监视/mnt/下的文件,在这时执行at 命令,如:
表示在18:57分时执行清除/mnt下的所以文件,我们会发现:
在18:56时还存在的文件,在18:57时被删除了。表示at命令执行成功。
不过我们要记住,at执行的命令都是一次性的。
(2)at其他指令
除了at time之外,at还有其他指令,如:
at -l|atq ##查看当前尚未执行的任务
at -d|atrm +任务序号 ####清除指令
at -c +任务序号 #####查看命令内容
at now+time ####从现在过多久执行命令
at -f file 时间 ####在某一时间执行文件中的命令集合
除此之外还有
at -m #延迟命令没有输出时仍然发送邮件给执行者
at -M #延迟命令有输出时但不发送邮件给执行者
(3)at命令的执行权力限定
vim/etc/at.deny ##用户黑名单
vim/etc/at.allow ##用户白名单
在黑名单中添加用户名:student 后
无法执行at命令。
而在白名单中添加studet用户后,则又可执行at命令。
不过注意:/etc/at.allow默认不存在,在白名单生成后,不在名单的用户就不具备执行at的权力。这意味着白名单生成后,黑名单自动无效。
二.定时任务
1.crontab命令
这类命令是永久且定时的。
crontab -u username -e ####编写某一 用户的定时任务文件
其中五个星代表的意思分别是:分钟 小时 天 月 周
而当月和周同时写的时候,表示为和。
图中代码意为每过五分钟输出hello
crontab -u uesrname -l ####查看定时任务的具体内容
crontab -u username -r ####删除定时任务文件
2.crontab的黑白名单
与at命令类似,crontab命令同样存在黑白名单,并且二者意义类似。
vim /etc/cron.deny ###黑名单
vim /etc/cron.allow ####白名单。默认不存在。名单外的用户无法执行cron命令
三.系统临时文件
1.Linux系统中,服务在正常运行时,会产生一些临时文件,这些临时文件的配置文件存放在/usr/lib/tmpfiles.d/ 目录下,均以.conf结尾
当由用户自行创建临时文件的配置文件时,编写格式为:执行临时配置文件,为了直观感受,创建文件。
可以看到此时文件存在。
而在清除临时配置文件后,文件消失。说明临时文件管理是成功的。