Skip site navigation (1)Skip section navigation (2)

FreeBSD Man Pages

Man Page or Keyword Search:
Man Architecture
Apropos Keyword Search (all sections) Output format
home | help
PKILL(1)                FreeBSD General Commands Manual               PKILL(1)

NAME
     pgrep, pkill - find or signal processes by name

SYNOPSIS
     pgrep [-flnvx] [-G gid] [-M core] [-N system] [-P ppid] [-U uid]
           [-d delim] [-g pgrp] [-s sid] [-t tty] [-u euid] pattern ...
     pkill [-signal] [-fnvx] [-G gid] [-M core] [-N system] [-P ppid] [-U uid]
           [-g pgrp] [-s sid] [-t tty] [-u euid] pattern ...

DESCRIPTION
     The pgrep command searches the process table on the running system and
     prints the process IDs of all processes that match the criteria given on
     the command line.

     The pkill command searches the process table on the running system and
     signals all processes that match the criteria given on the command line.

     The following options are available:

     -G gid          Restrict matches to processes with a real group ID in the
                     comma-separated list gid.

     -P ppid         Restrict matches to processes with a parent process ID in
                     the comma-separated list ppid.

     -M core         Extract values associated with the name list from the
                     specified core instead of the currently running system.

     -N system       Extract the name list from the specified system instead
                     of the default, which is the kernel image the system has
                     booted from.

     -U uid          Restrict matches to processes with a real user ID in the
                     comma-separated list uid.

     -d delim        Specify a delimiter to be printed between each process
                     ID.  The default is a newline.  This option can only be
                     used with the pgrep command.

     -f              Match against full argument lists.  The default is to
                     match against process names.

     -g pgrp         Restrict matches to processes with a process group ID in
                     the comma-separated list pgrp.  The value zero is taken
                     to mean the process group ID of the running pgrep or
                     pkill command.

     -l              Long output.  Print the process name in addition to the
                     process ID for each matching process.  If used in
                     conjunction with -f, print the process ID and the full
                     argument list for each matching process.  This option can
                     only be used with the pgrep command.

     -n              Match only the most recently created process, if any.

     -s sid          Restrict matches to processes with a session ID in the
                     comma-separated list sid.  The value zero is taken to
                     mean the session ID of the running pgrep or pkill
                     command.

     -t tty          Restrict matches to processes associated with a terminal
                     in the comma-separated list tty.  Terminal names may be
                     of the form ttyxx or the shortened form xx.  A single
                     dash (`-') matches processes not associated with a
                     terminal.

     -u euid         Restrict matches to processes with an effective user ID
                     in the comma-separated list euid.

     -v              Reverse the sense of the matching; display processes that
                     do not match the given criteria.

     -x              Require an exact match of the process name, or argument
                     list if -f is given.  The default is to match any
                     substring.

     -signal         A non-negative decimal number or symbolic signal name
                     specifying the signal to be sent instead of the default
                     TERM.  This option is valid only when given as the first
                     argument to pkill.

     If any pattern operands are specified, they are used as regular
     expressions to match the command name or full argument list of each
     process.  If the -f option is not specified, then the pattern will
     attempt to match the command name.  However, presently FreeBSD will only
     keep track of the first 19 characters of the command name for each
     process.  Attempts to match any characters after the first 19 of a
     command name will quietly fail.

     Note that a running pgrep or pkill process will never consider itself nor
     system processes (kernel threads) as a potential match.

EXIT STATUS
     The pgrep and pkill utilities return one of the following values upon
     exit:

     0       One or more processes were matched.

     1       No processes were matched.

     2       Invalid options were specified on the command line.

     3       An internal error occurred.

SEE ALSO
     kill(1), killall(1), ps(1), kill(2), sigaction(2), re_format(7)

HISTORY
     The pkill and pgrep utilities first appeared in NetBSD 1.6.  They are
     modelled after utilities of the same name that appeared in Sun Solaris 7.
     They made their first appearance in FreeBSD 5.3.

AUTHORS
     Andrew Doran <ad@NetBSD.org>

FreeBSD 11.0-PRERELEASE         March 25, 2004         FreeBSD 11.0-PRERELEASE

NAME | SYNOPSIS | DESCRIPTION | EXIT STATUS | SEE ALSO | HISTORY | AUTHORS

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=pkill&sektion=1&manpath=FreeBSD+5.3-RELEASE>

home | help