killall -- kill processes by name


killall [-egiqvw] [-signal] name...
killall -l
killall -V


killall sends a signal to all processes running any of the specified commands. If no signal name is specified, SIGTERM is sent.

Signals can be specified either by name (e.g. -HUP) or by number (e.g. -1). Signal 0 (check if a process exists) can only be specified by number.

If the command name contains a slash (/), processes executing that particular file will be selected for killing, independent of their name.

killall returns a non-zero return code if no process has been killed for any of the listed commands. If at least one process has been killed for each command, killall returns zero.

A killall process never kills itself (but may kill other killall processes).

Standard Options


requires an exact match for very long names. If a command name is longer than 15 characters, the full name may be unavailable (i.e. it is swapped out). In this case, killall will kill everything that matches within the first 15 characters. With -e, such entries are skipped. killall prints a message for each skipped entry if -v is specified in addition to -e.


kills the process group to which the process belongs. The kill signal is only sent once per group, even if multiple processes belonging to the same process group were found.


asks interactively for confirmation before killing.


lists all known signal names.


does not complain if no processes were killed.


reports if the signal was successfully sent.

LSB Deprecated Options

The behaviors specified in this section are expected to disappear from a future version of the LSB; applications should only use the non-LSB-deprecated behaviors.


displays version information.