At (command)

In computing, codice_1 is a command in Unix-like operating systems, Microsoft 
Windows, and ReactOS used to schedule commands to be executed once, at a particular time in the future.
Design.
Unix-like.
On Unix-like operating systems, codice_1 reads a series of commands from standard input and collects them into one "at-job" which is carried out at a later date. The job inherits the current environment, so that it is executed in the same working directory and with the same environment variables set as when it was scheduled.
It differs from codice_3, which is used for recurring executions (e.g. once an hour, every Tuesday, January 1 every year). As with codice_3, many Unix systems allow the administrator to restrict access to the codice_1 command.
codice_1 can be made to mail a user when done carrying out a scheduled job, can use more than one job queue, and can read a list of jobs to carry out from a computer file instead of standard input.
The Linux codice_1 command was mostly written by Thomas Koenig.
Microsoft Windows and ReactOS.
In addition to the graphical user interface for Windows Task Scheduler in Control Panel, Windows provides an codice_8 command that schedules commands and programs to run on a computer at a specified time and date (similar to codice_3). It is available since Windows NT, but is now deprecated in favor of codice_10. It can only be used when the Schedule service is running. When used without parameters, codice_8 lists scheduled commands.
codice_8 cannot access tasks created or modified by Control Panel or codice_13. Also, tasks created with codice_8are not interactive by default; interactivity needs to be explicitly requested.
The ReactOS implementation is based on the Windows variant. It was developed by Eric Kohl and is licensed under the GPLv2.
Usage.
Unix-like.
A sample command to compile a C program at 11:45 a. m. on January 31st would be:
$ echo "cc -o foo foo.c" | at 1145 jan 31
or
$ at 1145 jan 31
at> cc -o foo foo.c
at> ^D #(press Control-D while at the beginning of a line)
The codice_15 program lists the currently queued jobs, while codice_16 removes jobs from the queue:
$ atq
1234 2011-08-12 11:45 cc -o foo foo.c user
$ atrm 1234 
$ atq
In some Unix-like computer operating systems, it uses a daemon, codice_17, which waits in the background periodically checking the list of jobs to do and executing those at their scheduled time on behalf of codice_1.
Variants.
The codice_19 command can be used instead of at to only run scheduled jobs if the system's load average is below a certain value.
Microsoft Windows and ReactOS.
To use codice_8, the user must be a member of the local Administrators group.
The command-syntax is:
 at [\\ComputerName] [{[ID] [/delete]|/delete [/yes]}]
 at [[\\ComputerName] hours:minutes [/interactive] [{/every:date[...]|/next:date[...]}] command]
External links.
[[Category:Standard Unix programs|At]]
[[Category:Unix SUS2008 utilities]]
[[Category:Unix process- and task-management-related software]]
[[Category:Windows commands]]
[[Category:Windows administration]]