at命令允许指定运行脚本时间,at的守护进程atd会以后台模式运行,检查系统上的一个特殊目录来获取at命令的提交的任务。默认情况下,atd守护进程每60秒检查一次目录。有任务时会检查任务运行时间,如果与当前时间匹配,则运行此任务。
atd进程(ps -ef | grep atd
查看, 开启用 /etc/init.d/atd
start or restart
; 开机即启动则需要运行chkconfig --level 2345 atd on
)。
语法格式:at [参数]
常用参数:
-m 当指定的任务被完成之后,将给用户发送邮件,即使没有标准输出
-I atq的别名
-d atrm的别名
-v 显示任务将被执行的时间
-c 打印任务的内容到标准输出
-V 显示版本信息
-q<列队> 使用指定的列队
-f<文件> 从指定文件读入任务而不是从标准输入读入
-t<时间参数> 以时间参数的形式提交要运行的任务
参考实例
查看系统中的等待任务:
[root@test ~]# atq
使用”at -d”或者”atrm”(二者同效)指定id来删除系统中的等待任务,id为”atq”命令输出的第一行顺序数字:
[root@test ~]# at -d 1 [root@test ~]# atrm 1
假设存在 test.sh 脚本,立即运行:
[root@test ~]# at -f test.sh now
在20分钟之后运行 test.sh 脚本:
[root@test ~]# at -f test.sh now+20 min
在10:00运行 test.sh 脚本:
[root@test ~]# at -f test.sh 10:00
在2020年11月22日运行 test.sh 脚本:
[root@test ~]# at -f test.sh 11/22/2020
本文链接地址: linux 一次性定时任务 at