timeout: Run a command with a time limit
timeout runs the given
command and kills it if it is
still running after the specified time interval. Synopsis:
timeout [option] duration command [arg]…
command must not be a special built-in utility (see Special built-in utilities).
The program accepts the following options. Also see Common options. Options must precede operands.
Return the exit status of the managed
command on timeout, rather than
a specific exit status indicating a timeout. This is useful if the
command supports running for an indeterminate amount of time.
Don’t create a separate background program group, so that
command can use the foreground TTY normally.
This is needed to support timing out commands not started
directly from an interactive shell, in two situations.
commandis interactive and needs to read from the terminal for example
commandfrom the terminal (like Ctrl-C for example)
Note in this mode of operation, any children of
will not be timed out. Also SIGCONT will not be sent to
as it’s generally not needed with foreground processes, and can
cause intermittent signal delivery issues with programs that are monitors
themselves (like GDB for example).
Ensure the monitored
command is killed by also sending a ‘
signal, after the specified
duration. Without this option, if the
selected signal proves not to be fatal,
timeout does not kill
command on timeout, rather than the
signal may be a name like ‘
or a number. See Signal specifications.
Diagnose to stderr, any signal sent upon timeout.
duration is a floating point number in either the current or the
C locale (see Floating point) followed by an optional unit:
‘s’ for seconds (the default) ‘m’ for minutes ‘h’ for hours ‘d’ for days
A duration of 0 disables the associated timeout. Note that the actual timeout duration is dependent on system conditions, which should be especially considered when specifying sub-second timeouts.
124 if command times out 125 if timeout itself fails 126 if command is found but cannot be invoked 127 if command cannot be found 137 if command is sent the KILL(9) signal (128+9) the exit status of command otherwise