kill - send signals to a process


kill [ -s signalname PIDS ... ] [ -signalname PIDS ... ] [ -signalnumber PIDS ... ] [ PIDS ... ] [ -l ] [ -h ]


kill sends a signal to all PIDS specified on the command line. This is typically done to cause a process to terminate and/or to reload configuration files, etc. Signal handlers are specified per program, so the effects of a received signal may vary.


-s This parameter takes a single argument of a signal name (see -l) to be sent to the specified PIDs.
-signalname A short form of the -s signalname parameter.
-signalnumber This parameter specifies that the given signal number should be sent to the specified PID listing.
-l Display a listing of all available signals on the current system.
-h Display the usage help message.


If no signal is specified on the command line, SIGTERM is sent to the specified PIDs.

kill returns 0 on success or >0 if an error occurred.

kill is built-in to csh(1); See csh(1) for details.

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

This version of kill does not support -l [signal] since there didn't seem to be any use to the parameter (it didn't work on any platform I tried either.)

Signal names may have the SIG prefix. i.e.: kill -HUP and kill -SIGHUP are equivalent.

The signal list kill -l displays in an "extended" form which lists both the signal name and the signal number for easy reference.


Perl version rewritten for the Perl Power Tools project from the description of the kill program in OpenBSD.


Theo Van Dinter (


csh(1), ps(1), kill(2)