xref: /freebsd/bin/sleep/sleep.1 (revision 2a4a1db342263067035ce69a4017c645da63455d)
1.\" Copyright (c) 1990, 1993, 1994
2.\"	The Regents of the University of California.  All rights reserved.
3.\"
4.\" This code is derived from software contributed to Berkeley by
5.\" the Institute of Electrical and Electronics Engineers, Inc.
6.\"
7.\" Redistribution and use in source and binary forms, with or without
8.\" modification, are permitted provided that the following conditions
9.\" are met:
10.\" 1. Redistributions of source code must retain the above copyright
11.\"    notice, this list of conditions and the following disclaimer.
12.\" 2. Redistributions in binary form must reproduce the above copyright
13.\"    notice, this list of conditions and the following disclaimer in the
14.\"    documentation and/or other materials provided with the distribution.
15.\" 3. All advertising materials mentioning features or use of this software
16.\"    must display the following acknowledgement:
17.\"	This product includes software developed by the University of
18.\"	California, Berkeley and its contributors.
19.\" 4. Neither the name of the University nor the names of its contributors
20.\"    may be used to endorse or promote products derived from this software
21.\"    without specific prior written permission.
22.\"
23.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
24.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
25.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
26.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
27.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
28.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
29.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
30.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
31.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
32.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
33.\" SUCH DAMAGE.
34.\"
35.\"	@(#)sleep.1	8.3 (Berkeley) 4/18/94
36.\" $FreeBSD$
37.\"
38.Dd April 18, 1994
39.Dt SLEEP 1
40.Os
41.Sh NAME
42.Nm sleep
43.Nd suspend execution for an interval of time
44.Sh SYNOPSIS
45.Nm
46.Ar seconds
47.Sh DESCRIPTION
48The
49.Nm
50command
51suspends execution for a minimum of
52.Ar seconds .
53.Pp
54If the
55.Nm
56command receives a signal, it takes the standard action.
57.Sh IMPLEMENTATION NOTES
58The
59.Dv SIGALRM
60signal is not handled specially by this implementation.
61.Pp
62The
63.Nm
64command will accept and honor a non-integer number of specified seconds
65(with a
66.Ql .\&
67character as a decimal point).
68.Bf Sy
69This is a non-portable extension, and its use will nearly guarantee that
70a shell script will not execute properly on another system.
71.Ef
72.Sh DIAGNOSTICS
73The
74.Nm
75utility exits with one of the following values:
76.Bl -tag -width flag
77.It Li \&0
78On successful completion.
79.It Li \&>\&0
80An error occurred.
81.El
82.Sh EXAMPLES
83To schedule the execution of a command for
84.Va x
85number seconds later:
86.Pp
87.Dl (sleep 1800; sh command_file >& errors)&
88.Pp
89This incantation would wait a half hour before
90running the script command_file.
91(See the
92.Xr at 1
93utility.)
94.Pp
95To reiteratively run a command (with the
96.Xr csh 1 ) :
97.Pp
98.Bd -literal -offset indent -compact
99while (1)
100	if (! -r zzz.rawdata) then
101		sleep 300
102	else
103		foreach i (`ls *.rawdata`)
104			sleep 70
105			awk -f collapse_data $i >> results
106		end
107		break
108	endif
109end
110.Ed
111.Pp
112The scenario for a script such as this might be: a program currently
113running is taking longer than expected to process a series of
114files, and it would be nice to have
115another program start processing the files created by the first
116program as soon as it is finished (when zzz.rawdata is created).
117The script checks every five minutes for the file zzz.rawdata,
118when the file is found, then another portion processing
119is done courteously by sleeping for 70 seconds in between each
120awk job.
121.Sh SEE ALSO
122.Xr nanosleep 2 ,
123.Xr sleep 3
124.Sh STANDARDS
125The
126.Nm
127command is expected to be
128.St -p1003.2
129compatible.
130