NAME
sleep —
suspend execution for an
interval of time
SYNOPSIS
DESCRIPTION
The
sleep utility suspends execution for a minimum of
seconds. It is usually used to schedule the execution of
other commands (see
EXAMPLES below).
Note: The
NetBSD sleep command will
accept and honor a non-integer number of specified seconds. This is a
non-portable extension, and its use will nearly guarantee that a shell script
will not execute properly on another system.
When the
SIGINFO
signal is received, the estimate of the
amount of seconds left to sleep is printed on the standard output.
EXIT STATUS
The
sleep utility exits with one of the following values:
-
-
0
- On successful completion, or if the signal
SIGALRM
was received.
-
-
>0
- An error occurred.
EXAMPLES
To schedule the execution of a command for 1800 seconds later:
(sleep 1800; sh command_file >&
errors)&
This incantation would wait half an hour before running the script command_file.
(See the
at(1) utility.)
To reiteratively run a command (with
csh(1)):
while (1)
if (! -r zzz.rawdata) then
sleep 300
else
foreach i (*.rawdata)
sleep 70
awk -f collapse_data $i >> results
end
break
endif
end
The scenario for a script such as this might be: a program currently running is
taking longer than expected to process a series of files, and it would be nice
to have another program start processing the files created by the first
program as soon as it is finished (when zzz.rawdata is created). The script
checks every five minutes for the file zzz.rawdata, when the file is found,
then another portion processing is done courteously by sleeping for 70 seconds
in between each awk job.
SEE ALSO
at(1),
nanosleep(2),
sleep(3)
STANDARDS
The
sleep command is expected to be
IEEE Std
1003.2 (“POSIX.2”) compatible.
HISTORY
A
sleep utility appeared in
Version 4
AT&T UNIX.