Sun Microsystems, Inc. gratefully acknowledges The Open Group for
permission to reproduce portions of its copyrighted documentation.
Original documentation from The Open Group can be obtained online at
http://www.opengroup.org/bookstore/.
The Institute of Electrical and Electronics Engineers and The Open
Group, have given us permission to reprint portions of their
documentation.
In the following statement, the phrase ``this text'' refers to portions
of the system documentation.
Portions of this text are reprinted and reproduced in electronic form
in the SunOS Reference Manual, from IEEE Std 1003.1, 2004 Edition,
Standard for Information Technology -- Portable Operating System
Interface (POSIX), The Open Group Base Specifications Issue 6,
Copyright (C) 2001-2004 by the Institute of Electrical and Electronics
Engineers, Inc and The Open Group. In the event of any discrepancy
between these versions and the original IEEE and The Open Group
Standard, the original IEEE and The Open Group Standard is the referee
document. The original Standard can be obtained online at
http://www.opengroup.org/unix/online.html.
This notice shall appear on any product containing this material.
The contents of this file are subject to the terms of the
Common Development and Distribution License (the "License").
You may not use this file except in compliance with the License.
You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
or http://www.opensolaris.org/os/licensing.
See the License for the specific language governing permissions
and limitations under the License.
When distributing Covered Code, include this CDDL HEADER in each
file and include the License file at usr/src/OPENSOLARIS.LICENSE.
If applicable, add the following below this CDDL HEADER, with the
fields enclosed by brackets "[]" replaced with your own identifying
information: Portions Copyright [yyyy] [name of copyright owner]
Copyright 1989 AT&T
Portions Copyright (c) 1992, X/Open Company Limited All Rights Reserved
Portions Copyright (c) 1982-2007 AT&T Knowledge Ventures
Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved Portions
/usr/bin/sleep seconds
sleep seconds
sleep suspends execution for at least the time in seconds specified by seconds or until a SIGALRM signal is received. The seconds operand can be specified as a floating point number but the actual granularity normally depends on the underlying system.
The following operands are supported for /usr/bin/sleep and ksh93's sleep built-in command: seconds
A non-negative floating-point number specifying the number of seconds for which to suspend execution. The floating-point number may be specified in all formats required by C99/XPG6, including constants such as "Inf" or "infinity".
The following operands are supported: time
Specify time in seconds as a floating point number. The actual granularity depends on the underlying system, normally around 1 millisecond.
Example 1 Suspending Command Execution
The following example executes a command after a certain amount of time:
example% (sleep 105; command)&
Example 2 Executing a Command Every So Often
The following example executes a command every so often:
example% while true
do
command
sleep 37
done
Example 3 Suspend command execution forever (or until a SIGALRM signal is received)
example% sleep Inf
Example 4 Suspending command execution for 0.5 seconds
Suspending command execution for 0.5 seconds using an alternative floating-point representation for the value "0.5"
example% printf "%a\en" 0.5 0x1.0000000000000000000000000000p-01
example% sleep 0x1.0000000000000000000000000000p-01
See environ(5) for descriptions of the following environment variables that affect the execution of sleep: LANG, LC_ALL, LC_CTYPE, LC_MESSAGES, and NLSPATH.
The following exit values are returned: 0
The execution was successfully suspended for at least time seconds, or a SIGALRM signal was received (see NOTES).
An error has occurred.
See attributes(5) for descriptions of the following attributes:
ATTRIBUTE TYPE ATTRIBUTE VALUE |
Interface Stability Committed |
Standard See standards(5). |
ATTRIBUTE TYPE ATTRIBUTE VALUE |
Interface Stability Uncommitted |
ksh93(1), wait(1), alarm(2), sleep(3C), attributes(5), environ(5), standards(5)
If the sleep utility receives a SIGALRM signal, one of the following actions is taken:
Terminate normally with a zero exit status.
Effectively ignore the signal.
The sleep utility takes the standard action for all other signals.
The behavior for input values such as "NaN" (not-a-number) or negative values is undefined.