Execute commands at a specified time and optional date. The commands are read from standard input or from a file. (See also batch.) End input with EOF. time can be formed either as a numeric hour (with optional minutes and modifiers) or as a keyword. It can contain an optional date, formed as a month and date, a day of the week, or a special keyword (today or tomorrow). An increment can also be specified.
The at command can always be issued by a privileged user. Other users must be listed in the file /etc/at.allow if it exists; otherwise, they must not be listed in /etc/at.deny. If neither file exists, only a privileged user can issue the command.
Display the specified jobs on the standard output. This option does not take a time specification.
Delete the specified jobs. Same as atrm.
Read job from file, not from standard input.
Report all jobs that are scheduled for the invoking user. Same as atq.
Mail user when job has completed, regardless of whether output was created.
Place job in queue denoted by letter, where letter is any single letter from a-z or A-Z. Default queue is a. (The batch queue defaults to b.) Higher-lettered queues run at a lower priority.
Display the version number.
Hours can have one digit or two (a 24-hour clock is assumed by default); optional minutes can be given as one or two digits; the colon can be omitted if the format is h, hh, or hhmm (e.g., valid times are 5, 5:30, 0530, 19:45). If modifier am or pm is added, time is based on a 12-hour clock. If the keyword zulu is added, times correspond to Greenwich Mean Time.
midnight | noon | teatime | now
Use any one of these keywords in place of a numeric time. teatime translates to 4:00 p.m.; now must be followed by an increment (described in a moment).
month num[, year]
month is one of the 12 months, spelled out or abbreviated to its first three letters; num is the calendar date of the month; year is the four-digit year. If the given month occurs before the current month, at schedules that month next year.
One of the seven days of the week, spelled out or abbreviated to its first three letters.
today | tomorrow
Indicate the current day or the next day. If date is omitted, at schedules today when the specified time occurs later than the current time; otherwise, at schedules tomorrow.
Supply a numeric increment if you want to specify an execution time or day relative to the current time. The number should precede any of the keywords minute, hour, day, week, month, or year (or their plural forms). The keyword next can be used as a synonym of + 1:
In typical usage, you run at and input commands that you want executed at a particular time, followed by EOF.
$ at 1:00 am tomorrow
at> ./total_up > output
at> mail joe < output
at> <EOT>Entered by pressing Ctrl-D
job 1 at 2003-03-19 01:00
The two commands could also be placed in a file and submitted as follows:
$ at 1:00 am tomorrow < scriptfile
More examples of syntax follow. Note that the first two commands here are equivalent:
$ at 1945 December 9
$ at 7:45pm Dec 9
$ at 3 am Saturday
$ at now + 5 hours
$ at noon next day