1 .\" Copyright 1994 Salvatore Valente (svalente@mit.edu)
2 .\" Copyright 1992 Rickard E. Faith (faith@cs.unc.edu)
3 .\" May be distributed under the GNU General Public License
4 .TH KILL 1 "March 2013" "util-linux" "User Commands"
6 kill \- terminate a process
10 .IR signal | \fB\-p\fP ]
22 sends the specified signal to the specified process or process group. If no
23 signal is specified, the TERM signal is sent. The TERM signal will kill
24 processes which do not catch this signal. For other processes, it may be
25 necessary to use the KILL (9) signal, since this signal cannot be caught.
27 Most modern shells have a builtin kill function, with a usage rather similar to
28 that of the command described here. The '-a' and '-p' options, and the
29 possibility to specify processes by command name are a local extension.
31 If sig is 0, then no signal is sent, but error checking is still performed.
35 Specify the list of processes that
39 can be one of five things:
45 is larger than 0. The process with pid
50 All processes in the current process group are signaled.
53 All processes with pid larger than 1 will be signaled.
58 is larger than 1. All processes in process group
60 are signaled. When an argument of the form '-n' is given, and it is meant to
61 denote a process group, either the signal must be specified first, or the
62 argument must be preceded by a '--' option, otherwise it will be taken as the
66 All processes invoked using that name will be signaled.
69 \fB\-s\fR, \fB\-\-signal\fR \fIsignal\fR
70 Specify the signal to send. The signal may be given as a signal name or
73 \fB\-l\fR, \fB\-\-list\fR [\fIsignal\fR]
74 Print a list of signal names, or convert signal given as argument to a name.
75 The signals are found in
76 .I /usr/\:include/\:linux/\:signal.h
78 \fB\-L\fR, \fB\-\-table\fR
79 Similar to \-l, but will print signal names and their corresponding
82 \fB\-a\fR, \fB\-\-all\fR
83 Do not restrict the commandname-to-pid conversion to processes with the same
84 uid as the present process.
86 \fB\-p\fR, \fB\-\-pid\fR
89 should only print the process id (pid) of the named processes, and not send any
92 The \-\-pid option functionality is enabled when the command
93 copied or linked to name
95 This functionality is deprecated, and will not be removed in March 2016.
97 \fB\-q\fR, \fB\-\-queue\fR \fIsigval\fR
104 argument is used to specify an integer to be sent with the signal. If the
105 receiving process has installed a handler for this signal using the SA_SIGINFO
108 then it can obtain this data via the si_value field of the siginfo_t structure.
110 It is not possible to send a signal to explicitly selected thread in a
111 multithreaded process by
115 is used to send a signal to a thread group, then kernel selects arbitrary
116 member of the thread group that has not blocked the signal. For more details
119 CLONE_THREAD description.
125 accepts TID (thread ID, see
127 as argument. In this case the kill behavior is not changed and the signal is
128 also delivered to the thread group rather than to the specified thread.
136 Taken from BSD 4.4. The ability to translate process names to process ids was
142 The kill command is part of the util-linux package and is available from
143 .UR ftp://\:ftp.kernel.org\:/pub\:/linux\:/utils\:/util-linux/