at

用途

在指定的时间执行指令。

语法

at [options] time [date] 

描述

at 可以让使用者指定在 TIME 这个特定时刻执行某个程序或指令,TIME 的格式是 HH:MM其中的 HH 为小时,MM 为分钟,甚至你也可以指定 am, pm, midnight, noon, teatime(就是下午 4 点钟)等口语词。

如果想要指定超过一天内的时间,则可以用 MMDDYY 或者 MM/DD/YY 的格式,其中 MM 是分钟,DD 是第几日,YY 是指年份。另外,使用者甚至也可以使用像是 now + 时间间隔来弹性指定时间,其中的时间间隔可以是 minutes, hours, days, weeks。

另外,使用者也可指定 today 或 tomorrow 来表示今天或明天。当指定了时间并按下 enter 之后,at 会进入交谈模式并要求输入指令或程序,当你输入完后按下 ctrl+D 即可完成所有动作,至于执行的结果将会寄回你的帐号中。

root用户可以随时发出at命令。其他用户要想使用,必须写在/etc/at.allow这个文件中才能使用 at ,没有在这个档案中的使用者则不能使用 at (即使没有写在 at.deny 当中);如果 /etc/at.allow 不存在,就寻找 /etc/at.deny 这个档案,若写在这个 at.deny 的使用者则不能使用 at ,而没有在这个 at.deny 档案中的使用者,就可以使用 at。如果两个文件都不存在,只有root用户可以发出命令。

参数

options:

-m  :当 at 的工作完成后,即使没有输出讯息,亦以 email 通知使用者该工作已完成。
-l  :at -l 相当于 atq,列出目前系统上面的所有该使用者的 at 排程;
-f  :从文件读取要执行的指令,而不是从标准输入中读取。
-d  :at -d 相当于 atrm ,可以取消一个在 at 排程中的工作;
-v  :可以使用较明显的时间格式列出 at 排程中的工作列表;
-c  :可以列出后面接的该项工作的实际指令内容。
-q  :使用指定的伫列(Queue)来储存,at 的资料是存放在所谓的 queue 中,
      使用者可以同时使用多个 queue,而 queue 的编号为 a, b, c... z 以及 A, B, ... Z 共 52 个

date:

时间格式,这里可以定义出‘什么时候要进行 at 这项工作’的时间,格式有:
  HH:MM                ex> 04:00
    在今日的 HH:MM 时刻进行,若该时刻已超过,则明天的 HH:MM 进行此工作。
  HH:MM YYYY-MM-DD        ex> 04:00 2009-03-17
    强制规定在某年某月的某一天的特殊时刻进行该工作!
  HH:MM[am|pm] [Month] [Date]    ex> 04pm March 17
    也是一样,强制在某年某月某日的某时刻进行!
  HH:MM[am|pm] + number [minutes|hours|days|weeks]
    ex> now + 5 minutes    ex> 04pm + 3 days
    就是说,在某个时间点‘再加几个时间后’才进行。

范例

在2010/09/29号晚上21:30查看有哪些用户登入,向他们打声招呼,最后将执行的结果以E-mail传回:

  $ at -m 21:30 2010-09-29
  at> who     <-- 查看用户
  at> Happy! <-- 传送广播信息
  at> <EOT>   <-- 按Ctrl+D结束要执行的指令
job 1 at 2010-09-29 21:30

三天后的下午 5 点锺执行 /bin/ls :

at 5pm + 3 days /bin/ls

三个星期后的下午 5 点锺执行 /bin/ls :

at 5pm + 2 weeks /bin/ls

明天的 17:20 执行 /bin/date :

at 17:20 tomorrow /bin/date

1999 年的最后一天的最后一分钟印出 the end of world !

at 23:59 12/31/1999 echo the end of world !

相关命令

shells/commands/at.txt · 最后更改: 2010/09/29 03:01 (外部编辑)
[unknown link type]到顶部
GNU Free Documentation License 1.3
京ICP备05034962号 Debian Driven by DokuWiki get firefox browser Recent changes RSS feed Valid XHTML 1.0