KILL(1) General Commands Manual KILL(1)

# [NAME](#NAME)

kill - send a signal to one or more processes

# [SYNOPSIS](#SYNOPSIS)

**kill** \[**-q value**|**--queue value**] *pid* ...

**kill** **-signal** \[**-q value**|**--queue value**] *pid-or-pgid* ...  
**kill** **-s signal** \[**-q value**|**--queue value**] *pid-or-pgid* ...  
**kill** **--signal signal** \[**-q value**|**--queue value**] *pid-or-pgid* ...

**kill -l** \[*signal*]  
**kill --list** \[*signal*]

**kill -L**  
**kill --table**

# [DESCRIPTION](#DESCRIPTION)

**kill** sends a signal to one or more processes by *pid* or *pgid*, a process or process group identifier. [**signal**(7)](/man/os/procps/signal.7) explains the varieties and behavior of signals. **kill**'s default signal is TERM. The **-l** and **-L** options list available signals. Particularly useful signals include HUP, INT, KILL, STOP, CONT, and 0. Specify signals by number, by name, or by name with a “SIG” prefix; for example, **-9**, **-SIGKILL**, and **-KILL** are equivalent. A negative operand selects a process group; see the PGID column in [**ps**(1)](/man/os/procps/ps.1) command output. A *pid* of **-1** is special; it indicates all processes except the **kill** process itself and [**init**(8)](/man/os/procps/init.8).

The **-q** option uses an alternative signaling method to to additionally transmit an integral *value* to a receiving process. If that process has installed a handler for the signal and specified the SA\_SIGINFO flag to [**sigaction**(2)](/man/os/procps/sigaction.2), then it can obtain this datum via the *si\_value* field of the *siginfo\_t* structure.

# [OPTIONS](#OPTIONS)

**-signal**

[**-s signal**](#s)

[**--signal signal**](#signal)

Send *signal* by name or number as described above. If *signal* is 0 (zero), **kill** sends no signal, but still validates its operands; this behavior permits the caller to check whether the specified *pid*s and/or *pgid*s exist and it has permission to send them signals.

[**-q value**](#q)

[**--queue value**](#queue)

Use [**sigqueue**(3)](/man/os/procps/sigqueue.3) rather than [**kill**(2)](/man/os/procps/kill.2) to additionally send *value* to each *pid* or *pgid*.

[**-l** \[*signal*\]](#l)

[**--list** \[*signal*\]](#list)

Without an argument, list signal names. The optional argument causes **kill** to convert the specified *signal* from name to numeric form, or vice versa as appropriate, and report the translation.

[**-L**](#L)

[**--table**](#table)

List signal names in tabular format.

# [NOTES](#NOTES)

The shell (command-line interpreter) often has a built-in “kill” command. You may need to run the command described here as */bin/kill* to override the shell built-in.

If you use a negative operand, specify a signal by name or number first so that **kill** can distinguish it from a process group. For example, the command “**kill 123 -9**” is ambiguous; it could mean to kill process 123 with signal 9, or to kill process 123 and process group 9 with the default signal.

# [EXAMPLES](#EXAMPLES)

[**kill -HUP -1**](#kill)

Send hangup signal to all the processes you can.

[**kill -l 11**](#kill~2)

Report name corresponding to signal number 11.

[**kill 123 543**](#kill~3)

Send the default signal, SIGTERM, to processes 123 and 543.

[**kill -SIGTERM -123**](#kill~4)

Send the signal SIGTERM to process group 123.

# [SEE ALSO](#SEE_ALSO)

[**kill**(2)](/man/os/procps/kill.2), [**killall**(1)](/man/os/procps/killall.1), [**nice**(1)](/man/os/procps/nice.1), [**pkill**(1)](/man/os/procps/pkill.1), [**renice**(1)](/man/os/procps/renice.1), [**signal**(7)](/man/os/procps/signal.7), [**sigqueue**(3)](/man/os/procps/sigqueue.3), [**skill**(1)](/man/os/procps/skill.1)

# [REPORTING BUGS](#REPORTING_BUGS)

Please send bug reports to [procps@freelists.org](mailto:procps@freelists.org).

2023-12-27 procps-ng

---

Document: kill(1) from procps 4.0.7-r1 (Chainguard OS)
Source: https://downloads.sourceforge.net/project/procps-ng/Production/procps-ng-4.0.7.tar.xz
