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
pgrep(1)			 User Commands			      pgrep(1)

NAME
       pgrep, pkill - find or signal processes by name and other attributes

SYNOPSIS
       pgrep   [-flvx]	[-n  |	-o]   [-d delim]  [-P ppidlist]	 [-g pgrplist]
       [-s sidlist] [-u	euidlist]  [-U uidlist]	 [-G gidlist]  [-J projidlist]
       [-t termlist] [-T taskidlist] [pattern]

       pkill   [-signal]   [-fvx]   [-n	 |  -o]	  [-P ppidlist]	 [-g pgrplist]
       [-s sidlist] [-u	euidlist]  [-U uidlist]	 [-G gidlist]  [-J projidlist]
       [-t termlist] [-T taskidlist] [pattern]

DESCRIPTION
       The  pgrep  utility  examines  the  active  processes on	the system and
       reports the process IDs of the processes	 whose	attributes  match  the
       criteria	specified on the command line. Each process ID is printed as a
       decimal value and is separated from the next ID by a delimiter  string,
       which  defaults	to  a newline. For each	attribute option, the user can
       specify a set of	possible values	separated by  commas  on  the  command
       line. For example,

       pgrep -G	other,daemon

       matches	processes  whose real group ID is other	OR daemon. If multiple
       criteria	 options  are  specified,  pgrep   matches   processes	 whose
       attributes match	the logical AND	of the criteria	options. For example,

       pgrep -G	other,daemon -U	root,daemon

       matches processes whose attributes are:

		 (real group ID	is other OR daemon) AND

		 (real user ID is root OR daemon)

       pkill functions identically to pgrep, except that each matching process
       is signaled as if by kill(1) instead of having its process ID  printed.
       A  signal  name	or  number  may	be specified as	the first command line
       option to pkill.

OPTIONS
       The following options are supported:

       -d delim
	     Specifies the output delimiter string to be printed between  each
	     matching process ID. If no	-d option is specified,	the default is
	     a newline character. The -d option	is only	valid  when  specified
	     as	an option to pgrep.

       -f    The regular expression pattern should be matched against the full
	     process argument string (obtained from the	pr_psargs field	of the
	     /proc/nnnnn/psinfo	 file).	 If  no	 -f  option  is	specified, the
	     expression	is matched only	against	the  name  of  the  executable
	     file  (obtained from the pr_fname field of	the /proc/nnnnn/psinfo
	     file).

       -g pgrplist
	     Matches only processes whose process group	ID  is	in  the	 given
	     list.  If group 0 is included in the list,	this is	interpreted as
	     the process group ID of the pgrep or pkill	process.

       -G gidlist
	     Matches only processes whose real group ID	is in the given	 list.
	     Each group	ID may be specified as either a	group name or a	numer-
	     ical group	ID.

       -J projidlist
	     Matches only processes whose project ID is	 in  the  given	 list.
	     Each  project  ID	may be specified as either a project name or a
	     numerical project ID.

       -l    Long output format.  Prints  the  process	name  along  with  the
	     process ID	of each	matching process. The process name is obtained
	     from the pr_psargs	or pr_fname field, depending on	whether	the -f
	     option  was  specified  (see  above). The -l option is only valid
	     when specified as an option to pgrep.

       -n    Matches only the newest  (most  recently  created)	 process  that
	     meets  all	other specified	matching criteria. Cannot be used with
	     option -o.

       -o    Matches only the oldest (earliest created)	process	that meets all
	     other specified matching criteria.	Cannot be used with option -n.

       -P ppidlist
	     Matches only processes whose parent process ID is	in  the	 given
	     list.

       -s sidlist
	     Matches  only  processes  whose  process  session ID is in	in the
	     given list. If ID 0 is included in	the list, this is  interpreted
	     as	the session ID of the pgrep or pkill process.

       -t termlist
	     Matches  only  processes  which are associated with a terminal in
	     the given list. Each terminal is specified	as the suffix  follow-
	     ing "/dev/" of the	terminal's device path name in /dev. For exam-
	     ple, term/a or pts/0.

       -T taskidlist
	     Matches only processes whose task ID is in	the given list.	If  ID
	     0	is included in the list, this is interpreted as	the task ID of
	     the pgrep or pkill	process.

       -u euidlist
	     Matches only processes whose effective user ID is	in  the	 given
	     list.  Each  user ID may be specified as either a login name or a
	     numerical user ID.

       -U uidlist
	     Matches only processes whose real user ID is in the  given	 list.
	     Each user ID may be specified as either a login name or a numeri-
	     cal user ID.

       -v    Reverses the sense	of the matching. Matches all processes	except
	     those which meet the specified matching criteria.

       -x    Considers only processes whose argument string or executable file
	     name exactly matches the specified	pattern	to  be	matching  pro-
	     cesses.  The  pattern  match  is  considered to be	exact when all
	     characters	in the process argument	string or executable file name
	     match the pattern.

       -signal
	     Specifies	the signal to send to each matched process. If no sig-
	     nal is specified, SIGTERM is sent by default. The value of	signal
	     can be one	of the symbolic	names defined in signal(3HEAD) without
	     the SIG prefix, or	the corresponding signal number	as  a  decimal
	     value.  The  -signal  option  is only valid when specified	as the
	     first option to pkill.

OPERANDS
       The following operand is	supported:

       pattern
	     Specifies an Extended Regular Expression (ERE) pattern  to	 match
	     against  either the executable file name or full process argument
	     string. See regex(5) for a	complete description of	the  ERE  syn-
	     tax.

EXAMPLES
       Example 1: Obtaining a process ID

       Obtain the process ID of	sendmail:

       example%	pgrep -x -u root sendmail
       283

       Example 2: Terminating a	process

       Terminate the most recently created xterm:

       example%	pkill -n xterm

EXIT STATUS
       The following exit values are returned:

       0     One or more processes were	matched.

       1     No	processes were matched.

       2     Invalid command line options were specified.

       3     A fatal error occurred.

FILES
       /proc/nnnnn/psinfo
	     Process information files

ATTRIBUTES
       See attributes(5) for descriptions of the following attributes:

       +-----------------------------+-----------------------------+
       |      ATTRIBUTE	TYPE	     |	    ATTRIBUTE VALUE	   |
       +-----------------------------+-----------------------------+
       |Availability		     |SUNWcsu			   |
       +-----------------------------+-----------------------------+

SEE ALSO
       kill(1),	 proc(1),  ps(1),  truss(1),  kill(2), signal(3HEAD), proc(4),
       attributes(5), regex(5)

NOTES
       Both utilities match  the  ERE  pattern	argument  against  either  the
       pr_fname	 or  pr_psargs	fields	of  the	 /proc/nnnnn/psinfo files. The
       lengths of these	 strings  are  limited	according  to  definitions  in
       <sys/procfs.h>.	Patterns  which	can match strings longer than the cur-
       rent limits may fail to match the intended set of processes.

       If the pattern argument contains	ERE  meta-characters  which  are  also
       shell  meta-characters, it may be necessary to enclose the pattern with
       appropriate shell quotes.

       Defunct processes are never matched by either pgrep or pkill.

       The current pgrep or pkill process will never consider itself a	poten-
       tial match.

SunOS 5.9			  5 Dec	2001			      pgrep(1)

NAME | SYNOPSIS | DESCRIPTION | OPTIONS | OPERANDS | EXAMPLES | EXIT STATUS | FILES | ATTRIBUTES | SEE ALSO | NOTES

Want to link to this manual page? Use this URL:
<http://www.freebsd.org/cgi/man.cgi?query=pgrep&sektion=1&manpath=SunOS+5.9>

home | help