详解Linux系统中at与atq命令的用法,linuxatq


at
at  在指定的时间执行命令。

-V    在标准错误上输出版本号。
-q queue    使用指定的队列。一个队列用一个字母标定,有效的的队列标定的 范围是从a到z和从A到Z。at 的缺省队列是 a,batch 的缺省队列是 b。队列的字母顺序越高,则队列运行时越谦让(运行级别越低)。 指定的队列 "="保留给当前运行的作业所在的队列。 如果一个作业被提交到一个以大写字母标定的队列,则与提交到 batch 同样对待。如果给 atq 指定一个队列,则只显示在此指定 队列中的作业。
-m    当作业完成时即使没有输出也给用户发邮件。
-f file    从文件而不是标准输入中读取作业信息。
-l    等同于atq。
-d    等同于atrm。
-v    对于 atq, 显示完整的在队列中未被删除的作业,对于其他 命令,显示作业将要执行的时间。 显示的时间的格式类似于"1997-02-20 14:50",但如果设置了 POSIXLY_CORRECT 环境变量之后,格式类似于"Thu Feb 20 14:50:00 1996"。
-c    连接命令行中列出的作业并输出到标准输出。
例:
10分后,输出1111

代码如下:
[zhangy@BlackGhost ~]$ at now + 10 minutes
at> echo 1111
at> <eot>
job 3 at Fri Apr 26 12:56:00 2013

at的定时列表

代码如下:
[zhangy@BlackGhost ~]$ at -l
3 Fri Apr 26 12:56:00 2013 a root

查看单个at任务内容

代码如下:
[zhangy@BlackGhost ~]$ at -c 3
#!/bin/sh
# atrun uid=0 gid=0
# mail tnak 0
umask 22
.........省略........
echo 1111

删除at任务

代码如下:
[zhangy@BlackGhost ~]$ at -d 3

atq
例:
查看at 任务

代码如下:
[zhangy@BlackGhost ~]$ at now + 10 minutes
at> echo 1111
at> <eot>
job 3 at Fri Apr 26 12:56:00 2013


代码如下:
[zhangy@BlackGhost ~]$ atq
3 Fri Apr 26 12:56:00 2013 a root

相关内容