NAME
timeout —
run a command with a time
limit
SYNOPSIS
timeout |
[--signal
sig | -s
sig]
[--preserve-status]
[--kill-after
time | -k
time]
[--foreground]
⟨duration⟩
⟨command⟩ ⟨args
...⟩ |
DESCRIPTION
timeout starts the
command with its
args. If
command is still running
after
duration, it is killed. By default,
SIGTERM
is sent.
-
-
- --preserve-status
- Always exits with the same status as
command even if it times out.
-
-
- --foreground
- Do not propagate timeout to the
command children.
-
-
- -s
sig, --signal
sig
- Specify the signal to send on timeout. By default,
SIGTERM
is sent.
-
-
- -k
time, --kill-after
time
- Send a second kill signal if command
is still running after time after the first signal
was sent.
duration and
time can be integer or
decimal numbers. Values without unit symbols are interpreted as seconds.
Supported unit symbols are:
- s
- seconds
- m
- minutes
- h
- hours
- d
- days
EXIT STATUS
If the timeout was not reached, the exit status of
command
is returned.
If the timeout was reached and
--preserve-status is set, the exit status
of
command is returned. If
--preserve-status is not set, an exit
status of 124 is returned.
If
command exits after receiving a signal, the exit status
returned is the signal number plus 128.
SEE ALSO
kill(1),
signal(3)
HISTORY
A
timeout utility appeared in a development branch of
FreeBSD 11 and was imported into
NetBSD 7. The
FreeBSD work is
compatible with GNU
timeout by
Padraig
Brady, from GNU Coreutils 8.21. The
timeout utility
first appeared in GNU Coreutils 7.0.