6bc22a379f
A patch from Debian. Bug-Debian: http://bugs.debian.org/375791 Backported-by: Sami Kerola <kerolasa@iki.fi>
180 lines
4.7 KiB
Groff
180 lines
4.7 KiB
Groff
.\" Manual page for pgrep / pkill.
|
|
.\" Licensed under version 2 of the GNU General Public License.
|
|
.\" Copyright 2000 Kjetil Torgrim Homme
|
|
.\"
|
|
.TH PGREP 1 "October 5, 2007" "Linux" "Linux User's Manual"
|
|
.SH NAME
|
|
pgrep, pkill \- look up or signal processes based on name and other attributes
|
|
|
|
.SH SYNOPSIS
|
|
.na
|
|
\fBpgrep\fR [\fB\-cflvx\fR] [\fB\-d\ \fIdelimiter\fR] [\fB\-n\fR|\fB\-o\fR] \
|
|
[\fB\-P\ \fIppid\fR,...] [\fB\-g\ \fIpgrp\fR,...] [\fB\-s\ \fIsid\fR,...] \
|
|
[\fB\-u\ \fIeuid\fR,...] [\fB\-U\ \fIuid\fR,...] [\fB\-G\ \fIgid\fR,...] \
|
|
[\fB\-t\ \fIterm\fR,...] [\fIpattern\fR]
|
|
|
|
.HP
|
|
\fBpkill\fR [\fB\-\fIsignal\fR] [\fB\-fvx\fR] [\fB\-n\fR|\fB\-o\fR] \
|
|
[\fB\-P\ \fIppid\fR,...] [\fB\-g\ \fIpgrp\fR,...] [\fB\-s\ \fIsid\fR,...] \
|
|
[\fB\-u\ \fIeuid\fR,...] [\fB\-U\ \fIuid\fR,...] [\fB\-G\ \fIgid\fR,...] \
|
|
[\fB\-t\ \fIterm\fR,...] [\fIpattern\fR]
|
|
|
|
.SH DESCRIPTION
|
|
\fBpgrep\fP looks through the currently running processes and lists the
|
|
process IDs which matches the selection criteria to stdout. All
|
|
the criteria have to match. For example,
|
|
|
|
.IP
|
|
$ pgrep \-u root sshd
|
|
|
|
.PP
|
|
will only list the processes called \fBsshd\fP AND owned by \fBroot\fP.
|
|
On the other hand,
|
|
|
|
.IP
|
|
$ pgrep \-u root,daemon
|
|
|
|
.PP
|
|
will list the processes owned by \fBroot\fP OR \fBdaemon\fP.
|
|
|
|
\fBpkill\fP will send the specified signal (by default \fBSIGTERM\fP)
|
|
to each process instead of listing them on stdout.
|
|
|
|
.SH OPTIONS
|
|
\-c
|
|
Suppress normal output; instead print a count of matching processes.
|
|
.TP
|
|
\fB\-d \fIdelimiter\fP
|
|
Sets the string used to delimit each process ID in the output (by
|
|
default a newline). (\fBpgrep\fP only.)
|
|
.TP
|
|
\fB\-f\fR
|
|
The \fIpattern\fP is normally only matched against the process name.
|
|
When \fB\-f\fR is set, the full command line is used.
|
|
.TP
|
|
\fB\-g \fIpgrp\fP,...
|
|
Only match processes in the process group IDs listed. Process group 0
|
|
is translated into \fBpgrep\fP's or \fBpkill\fP's own process group.
|
|
.TP
|
|
\-G \fIgid\fP,...
|
|
Only match processes whose real group ID is listed. Either the
|
|
numerical or symbolical value may be used.
|
|
.TP
|
|
\fB\-l\fR
|
|
List the process name as well as the process ID. (\fBpgrep\fP only.)
|
|
.TP
|
|
\fB\-n\fR
|
|
Select only the newest (most recently started) of the matching
|
|
processes.
|
|
.TP
|
|
\fB\-o\fR
|
|
Select only the oldest (least recently started) of the matching
|
|
processes.
|
|
.TP
|
|
\fB\-P \fIppid\fP,...
|
|
Only match processes whose parent process ID is listed.
|
|
.TP
|
|
\fB\-s \fIsid\fP,...
|
|
Only match processes whose process session ID is listed. Session ID 0
|
|
is translated into \fBpgrep\fP's or \fBpkill\fP's own session ID.
|
|
.TP
|
|
\fB\-t \fIterm\fP,...
|
|
Only match processes whose controlling terminal is listed. The
|
|
terminal name should be specified without the "/dev/" prefix.
|
|
.TP
|
|
\fB\-u \fIeuid\fP,...
|
|
Only match processes whose effective user ID is listed. Either the
|
|
numerical or symbolical value may be used.
|
|
.TP
|
|
\fB\-U \fIuid\fP,...
|
|
Only match processes whose real user ID is listed. Either the
|
|
numerical or symbolical value may be used.
|
|
.TP
|
|
\fB\-v\fR
|
|
Negates the matching.
|
|
.TP
|
|
\fB\-x\fR
|
|
Only match processes whose name (or command line if \-f is specified)
|
|
\fBexactly\fP match the \fIpattern\fP.
|
|
.TP
|
|
\-\fIsignal\fP
|
|
Defines the signal to send to each matched process. Either the
|
|
numeric or the symbolic signal name can be used. (\fBpkill\fP only.)
|
|
|
|
.SH OPERANDS
|
|
.TP
|
|
\fIpattern\fP
|
|
Specifies an Extended Regular Expression for matching against the
|
|
process names or command lines.
|
|
|
|
.SH EXAMPLES
|
|
Example 1: Find the process ID of the \fBnamed\fP daemon:
|
|
|
|
.IP
|
|
$ pgrep \-u root named
|
|
|
|
.PP
|
|
Example 2: Make \fBsyslog\fP reread its configuration file:
|
|
|
|
.IP
|
|
$ pkill \-HUP syslogd
|
|
|
|
.PP
|
|
Example 3: Give detailed information on all \fBxterm\fP processes:
|
|
|
|
.IP
|
|
$ ps \-fp $(pgrep \-d, \-x xterm)
|
|
|
|
.PP
|
|
Example 4: Make all \fBnetscape\fP processes run nicer:
|
|
|
|
.IP
|
|
$ renice +4 `pgrep netscape`
|
|
|
|
.SH "EXIT STATUS"
|
|
.PD 0
|
|
.TP
|
|
.I 0
|
|
One or more processes matched the criteria.
|
|
.TP
|
|
.I 1
|
|
No processes matched.
|
|
.TP
|
|
.I 2
|
|
Syntax error in the command line.
|
|
.TP
|
|
.I 3
|
|
Fatal error: out of memory etc.
|
|
|
|
.SH NOTES
|
|
The process name used for matching is limited to the 15 characters
|
|
present in the output of /proc/\fIpid\fP/stat. Use the \-f option to
|
|
match against the complete command line, /proc/\fIpid\fP/cmdline.
|
|
|
|
The running \fBpgrep\fP or \fBpkill\fP process will never report
|
|
itself as a match.
|
|
|
|
.SH BUGS
|
|
The options \fB\-n\fP and \fB\-o\fP and \fB\-v\fP can not be combined.
|
|
Let me know if you need to do this.
|
|
|
|
Defunct processes are reported.
|
|
|
|
.SH "SEE ALSO"
|
|
.BR ps (1),
|
|
.BR regex (7),
|
|
.BR signal (7),
|
|
.BR killall (1),
|
|
.BR skill (1),
|
|
.BR kill (1),
|
|
.BR kill (2)
|
|
|
|
.SH STANDARDS
|
|
\fBpkill\fP and \fBpgrep\fP were introduced in Sun's Solaris 7. This
|
|
implementation is fully compatible.
|
|
|
|
.SH AUTHOR
|
|
Kjetil Torgrim Homme <kjetilho@ifi.uio.no>
|
|
|
|
Please send bug reports to <procps@freelists.org>
|