Mac Developer Library Developer


This manual page is for Mac OS X version 10.9

If you are running a different version of Mac OS X, view the documentation locally:

  • In Terminal, using the man(1) command

Reading manual pages

Manual pages are intended as a quick reference for people who already understand a technology.

  • To learn how the manual is organized or to learn about command syntax, read the manual page for manpages(5).

  • For more information about this technology, look for other documentation in the Apple Developer Library.

  • For general information about writing shell scripts, read Shell Scripting Primer.

KILLALL(1)                BSD General Commands Manual               KILLALL(1)

     killall -- kill processes by name

     killall [-delmsvz] [-help] [-u user] [-t tty] [-c procname] [-SIGNAL] [procname ...]

     The killall utility kills processes selected by name, as opposed to the selection by pid as done by
     kill(1).  By default, it will send a TERM signal to all processes with a real UID identical to the
     caller of killall that match the name procname.  The super-user is allowed to kill any process.

     The options are as follows:

           -d | -v     Be more verbose about what will be done.  For a single -d option, a list of the pro-cesses processes
                       cesses that will be sent the signal will be printed, or a message indicating that no
                       matching processes have been found.

           -e          Use the effective user ID instead of the (default) real user ID for matching pro-cesses processes
                       cesses specified with the -u option.

           -help       Give a help on the command usage and exit.

           -l          List the names of the available signals and exit, like in kill(1).

           -m          Match the argument procname as a (case sensitive) regular expression against the
                       names of processes found.  CAUTION!  This is dangerous, a single dot will match any
                       process running under the real UID of the caller.

           -s          Show only what would be done, but do not send any signal.

           -SIGNAL     Send a different signal instead of the default TERM.  The signal may be specified
                       either as a name (with or without a leading SIG), or numerically.

           -u user     Limit potentially matching processes to those belonging to the specified user.

           -t tty      Limit potentially matching processes to those running on the specified tty.

           -c procname
                       When used with the -u or -t flags, limit potentially matching processes to those
                       matching the specified procname.

           -z          Do not skip zombies.  This should not have any effect except to print a few error
                       messages if there are zombie processes that match the specified pattern.

     Sending a signal to all processes with uid XYZ is already supported by kill(1).  So use kill(1) for
     this job (e.g. $ kill -TERM -1 or as root $ echo kill -TERM -1 | su -m <user>)

     The killall command will respond with a short usage message and exit with a status of 2 in case of a
     command error.  A status of 1 will be returned if either no matching process has been found or not all
     processes have been signalled successfully.  Otherwise, a status of 0 will be returned.

     Diagnostic messages will only be printed if requested by -d options.

     kill(1), sysctl(3)

     The killall command appeared in FreeBSD 2.1.  It has been modeled after the killall command as avail-able available
     able on other platforms.

     The killall program was originally written in Perl and was contributed by Wolfram Schneider, this man-ual manual
     ual page has been written by J"rg Wunsch.  The current version of killall was rewritten in C by Peter
     Wemm using sysctl(3).

BSD                            January 26, 2004                            BSD

Reporting Problems

The way to report a problem with this manual page depends on the type of problem:

Content errors
Report errors in the content of this documentation with the feedback links below.
Bug reports
Report bugs in the functionality of the described tool or API through Bug Reporter.
Formatting problems
Report formatting mistakes in the online version of these pages with the feedback links below.