文章目录

  • 1.命令简介
  • 2.命令格式
  • 3.选项说明
  • 4.常用示例
  • 参考文献

1.命令简介

at 指定命令运行时间。

at 的守护进程 atd 会以后台模式运行,检查系统上的一个特殊目录来获取 at 命令的提交的作业。默认情况下,atd 守护进程每 60 秒检查一次目录。有作业时会检查作业运行时间,如果与当前时间匹配,则运行此作业。

注意: atd 如果没有启动可通过 systemctl restart atd.service 启动。

2.命令格式

at [-V] [-q queue] [-f file] [-mldbv] TIME
at [-V] [-q queue] [-f file] [-mldbv] -t time_arg
at -c job [job...]

3.选项说明

-m当指定的任务被完成之后,将给用户发送邮件,即使没有标准输出。
-Iatq 的别名,列出尚未执行的计划任务。
-datrm 的别名。删除指定的计划任务。
-v显示任务将被执行的时间。
-c打印任务的内容到标准输出。
-V显示版本信息。
-q <queue>使用指定的列队。
-f <file>从指定文件读入任务而不是从标准输入读入。
-t <time>以时间参数的形式提交要运行的任务。

at 允许使用一套相当复杂的指定时间的方法。他能够接受在当天的 hh:mm(小时:分钟)式的时间指定。假如该时间已过去,那么就放在第二天执行。当然也能够使用midnight(深夜),noon(中午),teatime(饮茶时间,一般是下午4点)等比较模糊的词语来指定时间。用户还能够采用 12 小时计时制,即在时间后面加上 AM(上午)或 PM(下午)来说明是上午还是下午。 也能够指定命令执行的具体日期,指定格式为 month day(月 日)或 mm/dd/yy(月/日/年)或 dd.mm.yy(日.月.年)。指定的日期必须跟在指定时间的后面。

上面介绍的都是绝对计时法,其实还能够使用相对计时法,这对于安排不久就要执行的命令是很有好处的。指定格式为:now + count time-units ,now 就是当前时间,time-units是时间单位,这里能够是 minutes(分钟)、hours(小时)、days(天)、weeks(星期)。count 是时间的数量,究竟是几天,还是几小时,等等。 更有一种计时方法就是直接使用today(今天)、tomorrow(明天)来指定完成命令的时间。

TIME(时间格式)可以定义出什么时候要进行 at 这项任务的时间,格式有:

HH:MM
04:00

在今日的 HH:MM 时刻进行,若该时刻已超过,则明天的 HH:MM 进行此任务。

HH:MM YYYY-MM-DD
04:00 2009-03-17

强制规定在某年某月的某一天的特殊时刻进行该项任务。

HH:MM[am|pm] [Month] [Date]
04pm March 17

也是一样,强制在某年某月某日的某时刻进行该项任务

HH:MM[am|pm] + number [minutes|hours|days|weeks]
now + 5 minutes
04pm + 3 days

就是说,在某个时间点再加几个时间后才进行该项任务。

4.常用示例

(1)三天后的下午 5 点钟执行命令。

at 5pm + 3 days
at> /usr/bin/ls
at> <EOT>
job 2 at Tue Nov  1 17:00:00 2022

要执行的命令从标准输入指定,<EOT> 表示输入结束,可键入 Ctrl + D 来表示输入结束。

(2)明天17点钟,输出时间到指定文件内。

at 17:00 tomorrow
at> date > /root/test/date.log
at> <EOT>
job 4 at Sun Oct 30 17:00:00 2022

(3)查看尚未执行的计划任务。

设定计划任务后,在没有执行之前我们可以查看系统有哪些尚未执行的工作任务。

at -l
4   Sun Oct 30 17:00:00 2022 a root
2   Tue Nov  1 17:00:00 2022 a root

或者使用 atq 命令。

(4)删除未执行的任务。

比如删除 2 号任务。

at -d 2

或者使用 atrm 命令。

(5)显示已经设置的任务内容。

at -c 4
#!/bin/sh
# atrun uid=0 gid=0
# mail root 0
umask 22
...
cd /root || {echo 'Execution directory inaccessible' >&2exit 1
}
${SHELL:-/bin/sh} << 'marcinDELIMITER1c0816b5'
date > /root/test/date.logmarcinDELIMITER1c0816b5

参考文献

at(1) - Linux man page - Die.net
每天一个linux命令(49):at命令- peida - 博客园

Linux 命令(184)—— at 命令相关推荐

  1. 【Linux】一步一步学Linux——arpd命令(184)

    00. 目录 文章目录 00. 目录 01. 命令概述 02. 命令格式 03. 常用选项 04. 参考示例 05. 附录 01. 命令概述 arpd命令是用来收集免费arp信息的一个守护进程,它将收 ...

  2. linux cpu使用率1200%,linux下用top命令查看cpu利用率超过100%

    今天跑了一个非常耗时的批量插入操作..通过top命令查看cpu以及内存的使用的时候,cpu的时候查过了120%..以前没注意..通过在top的情况下按大键盘的1,查看的cpu的核数为4核. 通过网上查 ...

  3. linux端口跟踪命令,Linux路由跟踪的命令是什么

    1. 了解traceroute的作用与原理 Linux 上的traceroute命令用于路由跟踪.通常用于了解网络数据包所经过的节点,或者查找网络故障点.网络中的数据包是经过一个一个路由器转发的,专业 ...

  4. Linux 运维常用命令 find、awk、sed、grep、vi、ps、lsof、rpm

    先用一个脚本,模拟创建 14 个测试文件: #!/bin/bash for ((i=1;i<=10;i++)); do if [ $i -lt 3 ] thentouch /home/mysql ...

  5. Linux命令行与命令

    Linux命令行与命令 作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! Linux的命令是很重要的工具,也往往是初学者最大的瓶颈. ...

  6. linux查询重复数据库,Linux如何使用locate命令查找数据搜索数据库

    通常在Linux查找数据库我们都使用find,那么除了find命令我们还可以用locate命令,可以在搜寻数据库时快速找到档案,具体怎么使用呢?下面小编就给大家详细介绍下locate命令的用法. Li ...

  7. linux 命令删除命令,Linux 命令之删除命令

    在Linux下删除文件用rm命令,具体用法如下: rm [选项] 文件 选项说明: -f -force 忽略不存在的文件,强制删除,无任何提示 -i --interactive 进行交互式地删除 -r ...

  8. Linux下视频截取命令

    比如你有一个视频,然后你对其中某一段感兴趣,你想把他截取下来,并且不希望画面变差,(当然你也不想花钱买视频编辑软件),可以在Linux下使用如下命令: ffmpeg -ss 00:00:05 -t 0 ...

  9. Linux常用20条命令

    Linux常用20条命令 假装这里有个标题 1.cd 2.ls 3.grep 4.find 5.cp 6.mv 7.rm 8.ps 9.kill 10.kill all 11.file 12.tar ...

  10. VMware里的linux系统里的命令行里会有bee的声音,要如何关掉

    VMware里的linux系统里的命令行里会有bee的声音,要如何关掉 取消bell报警声的方法:登陆linux系统vi /etc/inputrc找到set bell-style none 将前面的# ...

最新文章

  1. linux C 多线程编程
  2. linux注册硬盘中断,基于Linux底层硬盘中断辅助代码的分析与设计
  3. SaaS加速器II 能力中心:互利互补 共享商业红利 1
  4. CentOS6.9 下编译安装MySQL5.7.19
  5. N-甲基-N-亚硝基脲(MNU)与眼睛健康(思考中)
  6. python 读取outlook_如何用 Python 读取 Outlook 中的电子邮件
  7. 「Luogu P2201」数列编辑器 解题报告
  8. [转]bookmark整理之.NET编程相关
  9. c语言答案选择题,C语言选择题(附答案)
  10. 四种进程或线程同步互斥的控制方法
  11. hive中groupby优化_hivesql : hive.groupby.skewindata 和hive.map.aggr 组合的坑
  12. python123货币转换器_Python之美元大写转换器
  13. 向下兼容性格什么意思_成大事者都有一种高段位能力:向下兼容
  14. Referring Image Segmentation 综述
  15. hbase snappy 安装_Hadoop HBase 配置 安装 Snappy 终极教程
  16. 什么是HotSpot虚拟机
  17. delete和delete[]引发的问题
  18. 2022-2028全球2-氨基-4-乙基吡啶行业调研及趋势分析报告
  19. 程序人生:hello程序的P2P
  20. ringbuffer的特别之处

热门文章

  1. The credentials mode of request initiated by the XMLHttpRequest is controlled by the withCredentials
  2. 内存高效的可逆 GAN 网络:Reversible GANs for Memory-efficient Image-to-Image Translation
  3. shrinkwrap-resolver解析pom依赖
  4. 学习July博文总结——支持向量机(SVM)的深入理解(下)
  5. perl安装的详细步骤
  6. Duality对偶学习笔记(第一课时)
  7. 西部世界分析:人民网点名IPFS 分布式存储打开千亿级市场
  8. 铁道部新客票系统设计
  9. 周末分享 | 2019年最好的演讲:别让任何人打乱你的人生节奏
  10. linux如何将百分比转换为数字,Linux_sql 自定义百分比转换小数函数代码,复制代码 代码如下: --CAST 和 CO - phpStudy...