详解Linux系统中at与atq命令的用法
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>
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>
job 3 at Fri Apr 26 12:56:00 2013
代码如下:
[zhangy@BlackGhost ~]$ atq
3 Fri Apr 26 12:56:00 2013 a root