KILL(1) General Commands Manual KILL(1)

killterminate or signal a process

kill [-s signal_name] pid ...

kill -l [exit_status]

kill -signal_name pid ...

kill -signal_number pid ...

The kill utility sends a signal to the processes specified by the pid operands.

Only the super-user may send signals to other users' processes.

The options are as follows:

signal_name
A symbolic signal name specifying the signal to be sent instead of the default TERM.
[exit_status]
If no operand is given, list the signal names; otherwise, write the signal name corresponding to exit_status.
-signal_name
A symbolic signal name specifying the signal to be sent instead of the default TERM.
-signal_number
A non-negative decimal integer, specifying the signal to be sent instead of the default TERM.

The following PIDs have special meanings:

-1
If superuser, broadcast the signal to all processes; otherwise broadcast to all processes belonging to the user.

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)

Some shells may provide a builtin kill command which is similar or identical to this utility. Consult the builtin(1) manual page.

The kill utility exits 0 on success, and >0 if an error occurs.

Terminate the processes with PIDs 142 and 157:

kill 142 157

Send the hangup signal (SIGHUP) to the process with PID 507:

kill -s HUP 507

Terminate the process group with PGID 117:

kill -- -117

builtin(1), csh(1), killall(1), ps(1), sh(1), kill(2), sigaction(2)

The kill utility is expected to be IEEE Std 1003.2 (“POSIX.2”) compatible.

A kill command appeared in Version 3 AT&T UNIX in section 8 of the manual.

A replacement for the command “kill 0” for csh(1) users should be provided.

October 3, 2016 macOS 14.4