1 .\" $FreeBSD: src/usr.bin/at/at.man,v 1.34 2003/03/26 02:38:18 keramida Exp $
10 .Nd queue, examine, or delete jobs for later execution
24 .Ar MM DD hh mm Op . Ar SS
27 .Fl c Ar job Op Ar job ...
34 .Fl r Ar job Op Ar job ...
55 read commands from standard input or a specified file.
56 The commands are executed at a later time, using
58 .Bl -tag -width indent
60 executes commands at a specified time;
62 lists the user's pending jobs, unless the user is the superuser; in that
63 case, everybody's jobs are listed;
67 executes commands when system load levels permit; in other words, when the load average
68 drops below _LOADAVG_MX (1.5), or the value specified in the invocation of
74 utility allows some moderately complex
77 It accepts times of the form
81 to run a job at a specific time of day.
82 (If that time is already past, the next day is assumed.)
83 As an alternative, the following keywords may be specified:
89 and time-of-day may be suffixed with
93 for running in the morning or the evening.
94 The day on which the job is to be run may also be specified
95 by giving a date in the form
99 or giving a date of the forms
106 The specification of a date must follow the specification of
108 Time can also be specified as:
110 .Em + Ar count \%time-units ,
111 where the time-units can be
121 may be told to run the job today by suffixing the time with
123 and to run the job tomorrow by suffixing the time with
126 For example, to run a job at 4pm three days from now, use
127 .Nm at Ar 4pm + 3 days ,
128 to run a job at 10:00am on July 31, use
129 .Nm at Ar 10am Jul 31
130 and to run a job at 1am tomorrow, use
131 .Nm at Ar 1am tomorrow .
135 utility also supports the
145 commands are read from standard input or the file specified
149 The working directory, the environment (except for the variables
157 are retained from the time of invocation.
162 command invoked from a
164 shell will retain the current userid.
165 The user will be mailed standard error and standard output from his
167 Mail will be sent using the command
173 shell, the owner of the login shell will receive the mail.
175 The superuser may use these commands in any case.
176 For other users, permission to use
178 is determined by the files
179 .Pa _PERM_PATH/at.allow
181 .Pa _PERM_PATH/at.deny .
184 .Pa _PERM_PATH/at.allow
185 exists, only usernames mentioned in it are allowed to use
188 a user is considered to be listed
189 only if the user name has no blank or other characters
190 before it on its line and a newline character immediately after the name,
191 even at the end of the file.
192 Other lines are ignored and may be used for comments.
195 .Pa _PERM_PATH/at.allow
197 .Pa _PERM_PATH/at.deny
198 is checked, every username not mentioned in it is then allowed
202 If neither exists, only the superuser is allowed use of
204 .Sh IMPLEMENTATION NOTES
207 is implemented through the
209 daemon periodically invoking
211 which is disabled by default.
214 for information about enabling
217 .Bl -tag -width indent
222 Cat the jobs listed on the command line to standard output.
226 (this option is deprecated; use
232 rather than standard input.
234 With no arguments, list all jobs for the invoking user.
236 job numbers are given, list only those jobs.
238 Send mail to the user when the job has completed even if there was no
241 Use the specified queue.
242 A queue designation consists of a single letter; valid queue designations
252 .Ar _DEFAULT_AT_QUEUE
253 queue (a) is the default for
256 .Ar _DEFAULT_BATCH_QUEUE
257 queue (b) is the default for
259 Queues with higher letters run with increased niceness.
260 If a job is submitted to a queue designated with an uppercase letter, it
261 is treated as if it had been submitted to batch at that time.
264 is given a specific queue, it will only show jobs pending in that queue.
266 Remove the specified jobs.
268 Specify the job time using the \*[Px] time format.
269 The argument should be in the form
271 .Op Oo Ar CC Oc Ar YY
272 .Ar MM DD hh mm Op . Ar SS
274 where each pair of letters represents the following:
276 .Bl -tag -width indent -compact -offset indent
278 The first two digits of the year (the century).
280 The second two digits of the year.
282 The month of the year, from 1 to 12.
284 the day of the month, from 1 to 31.
286 The hour of the day, from 0 to 23.
288 The minute of the hour, from 0 to 59.
290 The second of the minute, from 0 to 61.
297 letter pairs are not specified, the values default to the current
301 letter pair is not specified, the value defaults to 0.
305 shows completed but not yet deleted jobs in the queue; otherwise
306 shows the time the job will be executed.
309 .Bl -tag -width _ATJOB_DIR/_LOCKFILE -compact
311 directory containing job files
312 (/usr/lib/cron/jobs/)
313 .It Pa _ATJOB_DIR/_LOCKFILE
314 job-creation lock file
315 (/usr/lib/cron/jobs/...)
317 directory containing output spool files
318 (/usr/lib/cron/spool/)
319 .It Pa _PERM_PATH/at.allow
320 allow permission control
321 (/usr/lib/cron/at.allow)
322 .It Pa _PERM_PATH/at.deny
323 deny permission control
324 (/usr/lib/cron/at.deny)
325 .It Pa /var/run/utmpx
339 is not available or corrupted,
340 or if the user is not logged on at the time
342 is invoked, the mail is sent to the userid found
343 in the environment variable
345 If that is undefined or empty, the current userid is assumed.
352 as presently implemented are not suitable when users are competing for
354 If this is the case, another batch system such as
356 may be more suitable.
358 Specifying a date past 2038 may not work on some systems.
360 At was mostly written by
361 .An Thomas Koenig Aq ig25@rz.uni-karlsruhe.de .
362 The time parsing routines are by
363 .An David Parsons Aq orc@pell.chi.il.us ,
364 with minor enhancements by
365 .An Joe Halpin Aq joe.halpin@attbi.com .