svcadm(8)을 검색하려면 섹션에서 8 을 선택하고, 맨 페이지 이름에 svcadm을 입력하고 검색을 누른다.
batch(1)
at(1) User Commands at(1)
NAME
at, batch - execute commands at a later time
SYNOPSIS
/usr/bin/at [-c | -k | -s] [-m] [-f file] [-p project]
[-q queuename] -t time
/usr/bin/at [-c | -k | -s] [-m] [-f file] [-p project]
[-q queuename] timespec...
/usr/bin/at -l [-p project] [-q queuename] [at_job_id. ..]
/usr/bin/at -r at_job_id. ..
/usr/bin/batch [-p project]
/usr/xpg4/bin/at [-c | -k | -s] [-m] [-f file] [-p project]
[-q queuename] -t time
/usr/xpg4/bin/at [-c | -k | -s] [-m] [-f file] [-p project]
[-q queuename] timespec...
/usr/xpg4/bin/at -l [-p project] [-q queuename]
[at_job_id. ..]
/usr/xpg4/bin/at -r at_job_id. ..
/usr/xpg4/bin/batch [-p project]
DESCRIPTION
at
The at utility reads commands from standard input and groups them
together as an at-job, to be executed at a later time.
The at-job is executed in a separate invocation of the shell, running
in a separate process group with no controlling terminal, except that
the environment variables, current working directory, file creation
mask (see umask(1)), and system resource limits (for sh and ksh88 only,
see ulimit(1)) in effect when the at utility is executed is retained
and used when the at-job is executed.
When the at-job is submitted, the at_job_id and scheduled time are
written to standard error. The at_job_id is an identifier that is a
string consisting solely of alphanumeric characters and the period
character. The at_job_id is assigned by the system when the job is
scheduled such that it uniquely identifies a particular job.
User notification and the processing of the job's standard output and
standard error are described under the -m option.
Users are permitted to use at and batch (see below) if their name
appears in the file /etc/cron.d/at.allow. If that file does not exist,
the file /etc/cron.d/at.deny is checked to determine if the user should
be denied access to at. If neither file exists, only a user with the
solaris.jobs.user authorization is allowed to submit a job. If only
at.deny exists and is empty, global usage is permitted. The at.allow
and at.deny files consist of one user name per line.
cron and at jobs are not be executed if the user's account is locked.
Only accounts which are not locked as defined in shadow(5) will have
their job or process executed.
batch
The batch utility reads commands to be executed at a later time.
Commands of the forms:
/usr/bin/batch [-p project]
/usr/xpg4/bin/batch [-p project]
are respectively equivalent to:
/usr/bin/at -q b [-p project] now
/usr/xpg4/bin/at -q b -m [-p project] now
where queue b is a special at queue, specifically for batch jobs. Batch
jobs are submitted to the batch queue for immediate execution. Execu‐
tion of submitted jobs can be delayed by limits on the number of jobs
allowed to run concurrently. See queuedefs(5).
OPTIONS
If the -c, -k, or -s options are not specified, the SHELL environment
variable by default determines which shell to use.
For /usr/xpg4/bin/at and /usr/xpg4/bin/batch, if SHELL is unset or
NULL, /usr/xpg4/bin/sh is used.
For /usr/bin/at and /usr/bin/batch, if SHELL is unset or NULL, /bin/sh
is used.
The following options are supported:
-c
C shell. csh(1) is used to execute the at-job.
-k
Korn shell. /bin/ksh is used to execute the at-job.
-s
Bourne shell. sh(1) is used to execute the at-job.
-f file
Specifies the path of a file to be used as the source of the at-
job, instead of standard input.
-l
(The letter ell.) Reports all jobs scheduled for the invoking user
if no at_job_id operands are specified. If at_job_ids are speci‐
fied, reports only information for these jobs.
-m
Sends mail to the invoking user after the at-job has run, announc‐
ing its completion. Standard output and standard error produced by
the at-job are mailed to the user as well, unless redirected else‐
where. Mail is sent even if the job produces no output.
If -m is not used, the job's standard output and standard error is
provided to the user by means of mail, unless they are redirected
elsewhere; if there is no such output to provide, the user is not
notified of the job's completion.
-p project
Specifies under which project the at or batch job is run. When used
with the -l option, limits the search to that particular project.
Values for project is interpreted first as a project name, and then
as a possible project ID, if entirely numeric. By default, the
user's current project is used.
-q queuename
Specifies in which queue to schedule a job for submission. When
used with the -l option, limits the search to that particular
queue. Values for queuename are limited to the lowercase letters a
through z. By default, at-jobs are scheduled in queue a. In con‐
trast, queue b is reserved for batch jobs. Since queue c is
reserved for cron jobs, it can not be used with the -q option.
-r at_job_id
Removes the jobs with the specified at_job_id operands that were
previously scheduled by the at utility.
-t time
Submits the job to be run at the time specified by the time option-
argument, which must have the format as specified by the touch(1)
utility.
OPERANDS
The following operands are supported:
at_job_id
The name reported by a previous invocation of the at utility at the
time the job was scheduled.
timespec
Submit the job to be run at the date and time specified. All of the
timespec operands are interpreted as if they were separated by
space characters and concatenated. The date and time are inter‐
preted as being in the time zone of the user (as determined by the
TZ variable), unless a time zone name appears as part of time
below.
In the C locale, the following describes the three parts of the
time specification string. All of the values from the LC_TIME cate‐
gories in the C locale are recognized in a case-insensitive manner.
time
The time can be specified as one, two or four digits. One- and
two-digit numbers are taken to be hours, four-digit numbers to
be hours and minutes. The time can alternatively be specified
as two numbers separated by a colon, meaning hour:minute. An
AM/PM indication (one of the values from the am_pm keywords in
the LC_TIME locale category) can follow the time; otherwise, a
24-hour clock time is understood. A time zone name of GMT, UTC,
or ZULU (case insensitive) can follow to specify that the time
is in Coordinated Universal Time. Other time zones can be spec‐
ified using the TZ environment variable. The time field can
also be one of the following tokens in the C locale:
midnight Indicates the time 12:00 am (00:00).
noon Indicates the time 12:00 pm.
now Indicate the current day and time. Invoking at now
submits an at-job for potentially immediate execu‐
tion (that is, subject only to unspecified schedul‐
ing delays).
date
An optional date can be specified as either a month name (one
of the values from the mon or abmon keywords in the LC_TIME
locale category) followed by a day number (and possibly year
number preceded by a comma) or a day of the week (one of the
values from the day or abday keywords in the LC_TIME locale
category). Two special days are recognized in the C locale:
today Indicates the current day.
tomorrow Indicates the day following the current day.
If no date is given, today is assumed if the given time is
greater than the current time, and tomorrow is assumed if it is
less. If the given month is less than the current month (and no
year is given), next year is assumed.
increment
The optional increment is a number preceded by a plus sign (+)
and suffixed by one of the following: minutes, hours, days,
weeks, months, or years. (The singular forms are also
accepted.) The keyword next is equivalent to an increment num‐
ber of + 1. For example, the following are equivalent commands:
at 2pm + 1 week
at 2pm next week
USAGE
The format of the at command line shown here is guaranteed only for the
C locale. Other locales are not supported for midnight, noon, now, mon,
abmon, day, abday, today, tomorrow, minutes, hours, days, weeks,
months, years, and next.
Since the commands run in a separate shell invocation, running in a
separate process group with no controlling terminal, open file descrip‐
tors, traps and priority inherited from the invoking environment are
lost.
EXAMPLES
at
Example 1 Typical Sequence at a Terminal
This sequence can be used at a terminal:
$ at −m 0730 tomorrow
sort < file >outfile
<EOT>
Example 2 Redirecting Output
This sequence, which demonstrates redirecting standard error to a pipe,
is useful in a command procedure (the sequence of output redirection
specifications is significant):
$ at now + 1 hour <<!
diff file1 file2 2>&1 >outfile | mailx mygroup
Example 3 Self-rescheduling a Job
To have a job reschedule itself, at can be invoked from within the at-
job. For example, this daily-processing script named my.daily runs
every day (although crontab is a more appropriate vehicle for such
work):
# my.daily runs every day
at now tomorrow < my.daily
daily-processing
Example 4 Various Time and Operand Presentations
The spacing of the three portions of the C locale timespec is quite
flexible as long as there are no ambiguities. Examples of various times
and operand presentations include:
at 0815am Jan 24
at 8 :15amjan24
at now "+ 1day"
at 5 pm FRIday
at '17
utc+
30minutes'
batch
Example 5 Typical Sequence at a Terminal
This sequence can be used at a terminal:
$ batch
sort <file >outfile
<EOT>
Example 6 Redirecting Output
This sequence, which demonstrates redirecting standard error to a pipe,
is useful in a command procedure (the sequence of output redirection
specifications is significant):
$ batch <<!
diff file1 file2 2>&1 >outfile | mailx mygroup
!
ENVIRONMENT VARIABLES
See environ(7) for descriptions of the following environment variables
that affect the execution of at and batch: LANG, LC_ALL, LC_CTYPE,
LC_MESSAGES, NLSPATH, and LC_TIME.
DATEMSK If the environment variable DATEMSK is set, at uses its
value as the full path name of a template file containing
format strings. The strings consist of format specifiers and
text characters that are used to provide a richer set of
allowable date formats in different languages by appropriate
settings of the environment variable LANG or LC_TIME. The
list of allowable format specifiers is located in the get‐
date(3C) manual page. The formats described in the OPERANDS
section for the time and date arguments, the special names
noon, midnight, now, next, today, tomorrow, and the incre‐
ment argument are not recognized when DATEMSK is set.
SHELL Determine a name of a command interpreter to be used to
invoke the at-job. If the variable is unset or NULL, sh is
used. If it is set to a value other than sh, the implementa‐
tion uses that shell; a warning diagnostic is printed
telling which shell will be used.
TZ Determine the time zone. The job is submitted for execution
at the time specified by timespec or -t time relative to
the time zone specified by the TZ variable. If timespec
specifies a time zone, it overrides TZ. If timespec does not
specify a time zone and TZ is unset or NULL, an unspecified
default time zone is used.
EXIT STATUS
The following exit values are returned:
0 The at utility successfully submitted, removed or listed a job or
jobs.
>0 An error occurred, and the job will not be scheduled.
FILES
/etc/cron.d/at.allow names of users, one per line, who are autho‐
rized access to the at and batch utilities
/etc/cron.d/at.deny names of users, one per line, who are denied
access to the at and batch utilities
ATTRIBUTES
See attributes(7) for descriptions of the following attributes:
/usr/bin/at
tab() box; cw(2.75i) |cw(2.75i) lw(2.75i) |lw(2.75i) ATTRIBUTE TYPEAT‐
TRIBUTE VALUE _ Availabilitysystem/core-os _ CSINot enabled _ Interface
StabilityCommitted _ StandardSee standards(7).
/usr/xpg4/bin/at
tab() box; cw(2.75i) |cw(2.75i) lw(2.75i) |lw(2.75i) ATTRIBUTE TYPEAT‐
TRIBUTE VALUE _ Availabilitysystem/xopen/xcu4 _ CSINot enabled _ Inter‐
face StabilityStandard
/usr/bin/batch
tab() box; cw(2.75i) |cw(2.75i) lw(2.75i) |lw(2.75i) ATTRIBUTE TYPEAT‐
TRIBUTE VALUE _ Availabilitysystem/core-os _ CSIEnabled _ Interface
StabilityStandard
/usr/xpg4/bin/batch
tab() box; cw(2.75i) |cw(2.75i) lw(2.75i) |lw(2.75i) ATTRIBUTE TYPEAT‐
TRIBUTE VALUE _ Availabilitysystem/xopen/xcu4 _ CSIEnabled _ Interface
StabilityStandard
SEE ALSO
auths(1), crontab(1), csh(1), date(1), ksh88(1), sh(1), touch(1),
ulimit(1), umask(1), getdate(3C), auth_attr(5), queuedefs(5),
shadow(5), attributes(7), environ(7), standards(7), cron(8)
NOTES
Regardless of queue used, cron(8) has a limit of 100 jobs in execution
at any time.
There can be delays in cron at job execution. In some cases, these
delays can compound to the point that cron job processing appears to be
hung. All jobs are executed eventually. When the delays are excessive,
the only workaround is to kill and restart cron.
Oracle Solaris 11.4 11 May 2021 at(1)