timeout

v0.0.28
timeout [OPTION] DURATION COMMAND...

Start COMMAND, and kill it if still running after DURATION.

Options

--foreground

when not running timeout directly from a shell prompt, allow COMMAND to read from the TTY and get TTY signals; in this mode, children of COMMAND will not be timed out

--kill-after, -k

also send a KILL signal if COMMAND is still running this long after the initial signal was sent

--preserve-status

exit with the same status as COMMAND, even when the command times out

--signal=<SIGNAL>, -s <SIGNAL>

specify the signal to be sent on timeout; SIGNAL may be a name like 'HUP' or a number; see 'kill -l' for a list of signals

--verbose, -v

diagnose to stderr any signal sent upon timeout

Examples

Run sleep 10 and terminate it after 3 seconds:

timeout 3s sleep 10

Send a [s]ignal to the command after the time limit expires (TERM by default, kill -l to list all signals):

timeout --signal {{INT|HUP|KILL|...}} {{5s}} {{sleep 10}}

Send [v]erbose output to stderr showing signal sent upon timeout:

timeout --verbose {{0.5s|1m|1h|1d|...}} {{command}}

Preserve the exit status of the command regardless of timing out:

timeout --preserve-status {{1s|1m|1h|1d|...}} {{command}}

Send a forceful KILL signal after certain duration if the command ignores initial signal upon timeout:

timeout --kill-after={{5m}} {{30s}} {{command}}

The examples are provided by the tldr-pages project under the CC BY 4.0 License.

Please note that, as uutils is a work in progress, some examples might fail.