linux下的计划任务——只执行一次的定时任务

定时任务是操作系统提供给我们的一个非常好的功能,我们经常用定时任务来处理一些事情,比如每天定时备份网站数据、每个月执行下数据统计程序、监控服务器的运行情况(发生错误时给管理员发消息通知)等等,这些都需要定时任务来完成。

linux下的定时任务分为两大类:只执行一次的定时任务,周期性执行的定时任务。今天,我们一起来看看只执行一次的定时任务,关于周期性执行的定时任务,将会在接下来的一篇文章中表述。

atd服务

只执行一次的计划任务,我们是通过at命令来完成的,想要执行at命令则需要先开启atd服务。查看atd服务的运行状况及开启atd服务的命令如下:

# 查看atd服务状况# systemctl status atd # 开启atd服务# systemctl start atd

at权限管理

当使用at来产生新的任务时,该任务就会以文本文件形式被放到/var/spool/at目录下。

# ll /var/spool/attotal 8-rwx------ 1 root   root   2890 Nov  7 16:30 a0000201981b23  <===== at产生的文件drwx------ 2 daemon daemon 4096 Nov  7 16:27 spool

对于at的权限管理,系统有两个专门的文件来指定。这两个文件,其实就和我们理解的黑白名单一样。这两个文件分别是/etc/at.deny(黑名单)、/etc/at.allow(白名单)。系统默认的at.deny的内容为空,而对于/etc/at.allow系统默认是不存在的。如果这两个文件都不存在,则只有root用户可以使用at命令。

at命令详解

我们来看看如何使用at这个命令。

设置计划任务

行者AI 行者AI

行者AI绘图创作,唤醒新的灵感,创造更多可能

行者AI 100 查看详情 行者AI

使用at命令设置计划任务 at [-m] 时间,常用的时间格式——HH:MM YYYY-MM-DD,此外还可以使用英文的now +1 minutes类似形式设置。

# at 17:00 2020-11-11at> date >> /root/at.txtat>    date >> /root/at.txt        at> job 4 at Sat Nov  7 17:01:00 2020

查看计划任务

使用-l选项可查看计划任务,如果想看具体的命令可以使用-c选项。除此之外,还可以使用atq命令来查看。

# at -l6 Sat Nov  7 17:13:00 2020 a root3 Wed Nov 11 17:00:00 2020 a root# atq6 Sat Nov  7 17:13:00 2020 a root3 Wed Nov 11 17:00:00 2020 a root

移除计划任务

还未执行的计划任务,可以通过at -d或atrm来删除。

# at -d 3# atrm 6

使用at来生成计划任务还有一个好处就是,可以完成脱机管理工作。

以上就是linux下的计划任务——只执行一次的定时任务的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/270605.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2025年11月4日 12:10:16
下一篇 2025年11月4日 12:16:39

相关推荐

发表回复

登录后才能评论
关注微信