1AT(1)                      Linux Programmer's Manual                     AT(1)
2
3
4

NAME

6       at,  batch,  atq, atrm - queue, examine or delete jobs for later execu‐
7       tion
8

SYNOPSIS

10       at [-V] [-q queue] [-f file] [-mMlbv] TIME
11       at [-V] [-q queue] [-f file] [-mMlbv] -t time_arg
12       at -c job [job...]
13       at [ -rd ] job [job...]
14       atq [-V] [-q queue]
15       atrm [-V] job [job...]
16       batch
17

DESCRIPTION

19       at and batch read commands from standard  input  or  a  specified  file
20       which are to be executed at a later time.
21
22       at      executes commands at a specified time.
23
24       atq     lists  the  user's  pending  jobs, unless the user is the supe‐
25               ruser; in that case, everybody's jobs are listed.   The  format
26               of  the  output  lines (one for each job) is: Job number, date,
27               hour, queue, and username.
28
29       atrm    deletes jobs, identified by their job number.
30
31       batch   executes commands when system  load  levels  permit;  in  other
32               words,  when  the  load  average  drops below 0.8, or the value
33               specified in the invocation of atd.
34
35       At allows fairly complex time  specifications,  extending  the  POSIX.2
36       standard.   It  accepts  times of the form HH:MM to run a job at a spe‐
37       cific time of day.  (If that time is already  past,  the  next  day  is
38       assumed.)   You  may  also specify midnight, noon, or teatime (4pm) and
39       you can have a time-of-day suffixed with AM or PM for  running  in  the
40       morning or the evening.  You can also say what day the job will be run,
41       by giving a date in the form month-name day with an optional  year,  or
42       giving a date of the form MMDDYY or MM/DD/YY or DD.MM.YY or YYYY-MM-DD.
43       The specification of a date must follow the specification of  the  time
44       of day.  You can also give times like now + count time-units, where the
45       time-units can be minutes, hours, days, or weeks and you can tell at to
46       run  the  job today by suffixing the time with today and to run the job
47       tomorrow by suffixing the time with tomorrow.
48
49       For example, to run a job at 4pm three days from now, you would  do  at
50       4pm  + 3 days, to run a job at 10:00am on July 31, you would do at 10am
51       Jul 31 and to run a job at 1am tomorrow, you would do at 1am tomorrow.
52
53       The exact  definition  of  the  time  specification  can  be  found  in
54       /usr/share/doc/at-3.1.10/timespec.
55
56       For  both  at  and  batch, commands are read from standard input or the
57       file specified with the -f option and executed.  The working directory,
58       the  environment (except for the variables TERM, DISPLAY and _) and the
59       umask are retained from the time of invocation.  An at  -  or  batch  -
60       command invoked from a su(1) shell will retain the current userid.  The
61       user will be mailed standard error and standard output  from  his  com‐
62       mands, if any.  Mail will be sent using the command /usr/sbin/sendmail.
63       If at is executed from a su(1) shell, the owner of the login shell will
64       receive the mail.
65
66       The  superuser  may  use  these commands in any case.  For other users,
67       permission to use at is  determined  by  the  files  /etc/at.allow  and
68       /etc/at.deny.
69
70       If  the  file  /etc/at.allow exists, only usernames mentioned in it are
71       allowed to use at.
72
73       If /etc/at.allow does not exist, /etc/at.deny is checked,  every  user‐
74       name not mentioned in it is then allowed to use at.
75
76       If neither exists, only the superuser is allowed use of at.
77
78       An  empty  /etc/at.deny means that every user is allowed use these com‐
79       mands, this is the default configuration.
80

OPTIONS

82       -V      prints the version number to standard error.
83
84       -q queue
85               uses the specified queue.  A queue designation  consists  of  a
86               single letter; valid queue designations range from a to z.  and
87               A to Z.  The a queue is the default for at and the b queue  for
88               batch.  Queues with higher letters run with increased niceness.
89               The special queue "=" is reserved for jobs which are  currently
90               running.
91
92       If  a  job is submitted to a queue designated with an uppercase letter,
93       the job is treated as if it were submitted to batch at the time of  the
94       job.  Once the time is reached, the batch processing rules with respect
95       to load average apply.  If atq is given a specific queue, it will  only
96       show jobs pending in that queue.
97
98       -m      Send  mail to the user when the job has completed even if there
99               was no output.
100
101       -M      Never send mail to the user.
102
103       -f file Reads the job from file rather than standard input.
104
105       -l      Is an alias for atq.
106
107       -r      Is an alias for atrm.
108
109       -d      Is an alias for atrm.
110
111
112       -v      Shows the time the job will be executed  before  reading
113               the job.
114
115       Times  displayed  will  be  in  the  format "Thu Feb 20 14:50:00
116       1997".
117
118       -c     cats the jobs listed on the command line to standard out‐
119              put.
120
121       -t time_arg
122              Submit  the  job  to  be run at the time specified by the
123              time_arg option argument, which must have the same format
124              as  specified  for  the touch(1) utility's -t time option
125              argument ([[CC]YY]MMDDhhmm).
126

ENVIRONMENT

128       SHELL   The value of the SHELL environment variable at the  time
129               of  at  invocation will determine which shell is used to
130               execute the at job commands. If SHELL is unset  when  at
131               is  invoked, the user's login shell will be used; other‐
132               wise, if SHELL is set when at is invoked, it  must  con‐
133               tain  the  path  of  a shell interpreter executable that
134               will be used to run the commands at the specified time.
135
136       at will record the values of environment  variables  present  at
137       time  of at invocation. When the commands are run at the  speci‐
138       fied time, at will restore these  variables  to  their  recorded
139       values  .  These variables are excluded from this processing and
140       are never set by at when the commands are run :
141       TERM, DISPLAY, SHELLOPTS, _,  PPID,  BASH_VERSINFO,  EUID,  UID,
142       GROUPS.
143       If  the  user submitting the at job is not the super-user, vari‐
144       ables that alter the behaviour of the loader ld.so(8),  such  as
145       LD_LIBRARY_PATH , cannot be recorded and restored by at .
146

FILES

148       /var/spool/at
149       /var/spool/at/spool
150       /proc/loadavg
151       /var/run/utmp
152       /etc/at.allow
153       /etc/at.deny
154

SEE ALSO

156       cron(1), nice(1), sh(1), umask(2), atd(8).
157

BUGS

159       The correct operation of batch for Linux depends on the presence
160       of a proc- type directory mounted on /proc.
161
162       If the file /var/run/utmp is not available or corrupted,  or  if
163       the user is not logged on at the time at is invoked, the mail is
164       sent to the userid found in the  environment  variable  LOGNAME.
165       If that is undefined or empty, the current userid is assumed.
166
167       At  and  batch  as  presently  implemented are not suitable when
168       users are competing for resources.  If this is the case for your
169       site,  you  might want to consider another batch system, such as
170       nqs.
171

AUTHOR

173       At was  mostly  written  by  Thomas  Koenig,  ig25@rz.uni-karls‐
174       ruhe.de.
175
176
177
178local                              Nov 1996                              AT(1)
Impressum