| KILL(1) | General Commands Manual | KILL(1) |
kill — terminate
or signal a process
kill |
[-signal_number |
-signal_name |
-s signal_name]
pid ... |
kill |
-l [exit_status] |
The kill utility sends a signal to the
process(es) specified by the pid operand(s). If no
signal is specified, the TERM signal is used.
Only the superuser may send signals to other users' processes.
The options are as follows:
-l
[exit_status]If no operand is given, display the names of all the signals.
-signal_number |
-signal_name |
-s
signal_nameTERM.The following PIDs have special meanings:
Some of the more commonly used signals:
| 1 | HUP |
(hang up) |
| 2 | INT |
(interrupt) |
| 3 | QUIT |
(quit) |
| 6 | ABRT |
(abort) |
| 9 | KILL |
(non-catchable, non-ignorable kill) |
| 14 | ALRM |
(alarm clock) |
| 15 | TERM |
(software termination signal) |
For a complete list, consult the signal(3) manual page.
A signal number of 0 (kill
-0 pid) does not send a
signal, but only checks the validity of a certain PID. It succeeds if
pid exists or raises an error otherwise.
The kill utility exits 0 on
success, and >0 if an error occurs.
Forcibly terminate process ID 1234:
$ kill -9 1234Send the init(8) process the hangup signal, instructing it to re-read ttys(5):
# kill -HUP 1The kill utility is compliant with the
IEEE Std 1003.1-2008 (“POSIX.1”)
specification.
The -signal_name and
-signal_number syntax is
marked by IEEE Std 1003.1-2008
(“POSIX.1”) as being an X/Open System Interfaces
option.
kill also exists as a built-in to
csh(1) and ksh(1), though with a
different syntax.
A kill command appeared in
Version 3 AT&T UNIX.
| April 24, 2025 | Debian |