SLEEP(1P)
๐ค SLEEP(1P) โ the POSIX Programmer's Manual, bestie edition
okay so this little page lives in the POSIX Programmer's Manual (yes, the 1P one, not the regular Linux one), and the vibe check first: the Linux implementation of this interface might do stuff differently (so go read the corresponding Linux manual page for the deets on Linux behavior), or honestly the interface might just not be implemented on Linux at all. ๐
โจ PROLOG โจ
This manual page is part of the POSIX Programmer's Manual. The Linux implementation of this interface may differ โ consult the corresponding Linux manual page for details of Linux behavior โ or the interface may not be implemented on Linux. So like, don't come for me if your box is built different. ๐
๐ธ NAME ๐ธ
sleep โ suspend execution for an interval. she literally just naps. iconic behavior.
๐ฆ SYNOPSIS ๐ฆ
sleep time
๐ DESCRIPTION ๐
The sleep utility shall suspend execution for at least the integral number of seconds specified by the time operand. at least, bestie. it's not gonna wake up early for you.
โจ OPTIONS โจ
None. zero. zilch. the girl has no flags, she simply sleeps. ๐ค
๐ OPERANDS ๐
The following operand shall be supported:
timeโ a non-negative decimal integer specifying the number of seconds for which to suspend execution. that's the whole assignment.
๐ STDIN ๐
Not used. she's not listening. ๐ด
๐ INPUT FILES ๐
None.
๐ ENVIRONMENT VARIABLES ๐
The following environment variables shall affect the execution of sleep:
LANGโ provides a default value for the internationalization variables that are unset or null. (Check the Base Definitions volume of POSIX.1โ2017, Section 8.2, Internationalization Variables, for the precedence of internationalization variables used to determine the values of locale categories.)LC_ALLโ if set to a non-empty string value, it overrides the values of all the other internationalization variables. she's the main character fr.LC_CTYPEโ determines the locale for the interpretation of sequences of bytes of text data as characters (for example, single-byte as opposed to multi-byte characters in arguments).LC_MESSAGESโ determines the locale that should be used to affect the format and contents of diagnostic messages written to standard error.NLSPATHโ determines the location of message catalogs for the processing ofLC_MESSAGES.
๐ง ASYNCHRONOUS EVENTS ๐ง
If the sleep utility receives a SIGALRM signal, one of the following actions shall be taken:
- Terminate normally with a zero exit status.
- Effectively ignore the signal.
- Provide the default behavior for signals described in the ASYNCHRONOUS EVENTS section of Section 1.4, Utility Description Defaults. This could include terminating with a non-zero exit status.
The sleep utility shall take the standard action for all other signals. so SIGALRM gets the special treatment, everyone else gets the default. ๐
โญ STDOUT โญ
Not used. no thoughts, no output, just vibes.
๐ฅ STDERR ๐ฅ
The standard error shall be used only for diagnostic messages.
๐ธ OUTPUT FILES ๐ธ
None.
๐ซ EXTENDED DESCRIPTION ๐ซ
None.
๐ EXIT STATUS ๐
The following exit values shall be returned:
0โ the execution was successfully suspended for at leasttimeseconds, or aSIGALRMsignal was received. See the ASYNCHRONOUS EVENTS section. yes, getting interrupted counts as a win here, we love that for her.>0โ an error occurred. ๐ญ
๐ CONSEQUENCES OF ERRORS ๐
Default.
The following sections are informative.
๐ซถ APPLICATION USAGE ๐ซถ
None.
๐ EXAMPLES ๐
The sleep utility can be used to execute a command after a certain amount of time, as in:
(sleep 105; command) &
or to execute a command every so often, as in:
while true
do
command
sleep 37
done
like a little heartbeat loop, periodt. ๐
๐ง RATIONALE ๐ง
The exit status is allowed to be zero when sleep is interrupted by the SIGALRM signal because most implementations of this utility rely on the arrival of that signal to notify them that the requested finishing time has been successfully attained. Such implementations thus do not distinguish this situation from the successful completion case. Other implementations are allowed to catch the signal and go back to sleep until the requested time expires, or to provide the normal signal termination procedures.
As with all other utilities that take integral operands and do not specify subranges of allowed values, sleep is required by this volume of POSIX.1โ2017 to deal with time requests of up to 2147483647 seconds. This may mean that some implementations have to make multiple calls to the delay mechanism of the underlying operating system if its argument range is less than this. yeah, that's a lot of napping. ๐ญ
๐ฎ FUTURE DIRECTIONS ๐ฎ
None.
๐ SEE ALSO ๐
wait- The Base Definitions volume of POSIX.1โ2017, Chapter 8, Environment Variables
- The System Interfaces volume of POSIX.1โ2017,
alarm(),sleep()
๐ COPYRIGHT ๐
Portions of this text are reprinted and reproduced in electronic form from IEEE Std 1003.1-2017, Standard for Information Technology -- Portable Operating System Interface (POSIX), The Open Group Base Specifications Issue 7, 2018 Edition, Copyright (C) 2018 by the Institute of Electrical and Electronics Engineers, Inc and The Open Group. In the event of any discrepancy between this version 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 .
Any typographical or formatting errors that appear in this page are most likely to have been introduced during the conversion of the source files to man page format. To report such errors, see https://www.kernel.org/doc/man-pages/reporting_bugs.html .
okay that's the whole page bestie, no notes, go take a nap. this icon was brought to you by IEEE/The Open Group, 2017 โ so like, credit where credit is due, and that's the tea. ๐ซโจ๐
๐ฆ where this page comes from
- alpine 3.22: man-pages-posix 2017a-r0 ยท custom
- alpine 3.23: man-pages-posix 2017a-r0 ยท custom
- alpine 3.24: man-pages-posix 2017a-r0 ยท custom
- arch rolling: man-pages 6.19-1
- arch rolling: man-pages 6.20-1 ยท BSD-2-Clause AND BSD-3-Clause AND BSD-4.3TAHOE AND BSD-4-Clause-UC AND GPL-1.0-or-later AND GPL-2.0-only AND GPL-2.0-or-later AND GPL-3.0-or-later AND LGPL-3.0-linking-exception AND LGPL-3.0-or-later AND LicenseRef-Public-Domain AND LicenseRef-UltraPermissive AND Linux-man-pages-1-para AND Linux-man-pages-copyleft AND Linux-man-pages-copyleft-2-para AND Linux-man-pages-copyleft-var AND MIT AND Spencer-94
- nixpkgs unstable: man-pages-posix 2017a
- opensuse-leap 16.0: man-pages-posix 2017a-160000.4.1 ยท SUSE-IEEE
- ๐ girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms