PGREP(1) Linux User’s Manual PGREP(1)
名前
pgrep, pkill - 名前や各種属性に基づくプロセスの閲覧とシグナル送信
書式
pgrep [-flvx] [-d delimiter] [-n|-o] [-P ppid,...] [-g pgrp,...]
[-s sid,...] [-u euid,...] [-U uid,...] [-G gid,...]
[-t term,...] [pattern]
pkill [-signal] [-fvx] [-n|-o] [-P ppid,...] [-g pgrp,...]
[-s sid,...] [-u euid,...] [-U uid,...] [-G gid,...]
[-t term,...] [pattern]
説明
pgrep は現在実行中のプロセスを調べ、選択基準 (selection criteria) にマ
ッチするプロセスのプロセス ID を標準出力にリストする。全ての基準にマ ッ
チしなければならない。例えば
pgrep -u root sshd
は 、 sshd という名前で、かつ root が所有するプロセスのみをリストする。
一方
pgrep -u root,daemon
は、 root または daemon が所有するプロセスをリストする。
pkill は、標準出力にリストする代わりに、各プロセスに指定したシグナル を
送る (デフォルトでは SIGTERM)。
オプション
-d delimiter
出力で各プロセスの区切りに用いる文字列を設定する (デフォルトでは
改行文字)。(pgrep のみ)
-f pattern は通常プロセス名にマッチするが、 -f を設定するとコマンド
ライン全体にマッチの対象となる。
-g pgrp,...
リストされた ID のプロセスグループのどれかに属するプロセスにのみ
マッチする。プロセスグループ 0 は、 pgrep または pkill 自身の プ
ロセスグループとみなされる。
-G gid,...
実グループ ID がリストのどれかであるプロセスにのみマッチする。
-l プロセス名をプロセス ID といっしょに表示する。 (pgrep のみ)
-n マッチしたプロセスの中から最新のもの (最も新しく起動されたもの)
だけを選ぶ。
-o マッチしたプロセスの中から最古のもの (最も昔に起動されたもの) だ
けを選ぶ。
-P ppid,...
親プロセスのプロセス ID がリストのどれかであるプロセスにのみマッ
チする。
-s sid,...
セッション ID がリストのどれかであるプロセスにのみマッチする。セ
ッション ID 0 は、 pgrep または pkill 自身のプロセスグループとみ
なされる。
-t term,...
制御端末がリストのどれかであるプロセスにのみマッチする。端末名に
はプレフィクス "/dev/" 抜きで指定する。
-u euid,...
実効ユーザー ID がリストのどれかであるプロセスにのみマッチする。
数値・シンボル値のいずれかが使える。
-U uid,...
実ユーザー ID がリストのどれかであるプロセスにのみマッチする。数
値・シンボル値のいずれかが使える。
-v マッチの否定。
-x 名前が (-f を指定した場合はコマンドラインが) pattern に正確に一
致するプロセスにのみマッチする。
-signal
マッチしたプロセスに送るシグナルを定義する。数値・シンボル値のい
ずれかが使える。 (pkill のみ)
オペランド (OPERANDS)
pattern
プロセス名またはコマンドラインにマッチさせる拡張正規表現を指定す
る。
例
例 1: named デーモンのプロセス ID を表示する。
unix$ pgrep -u root named
例 2: syslog に設定ファイルを再読み込みさせる。
unix$ pkill -HUP syslogd
例 3: 全ての xterm プロセスの詳しい情報を表示する。
unix$ ps -fp $(pgrep -d, -x xterm)
例 4: 全ての netscape の nice 値を上げる。
unix$ renice +4 ‘pgrep netscape‘
終了ステータス
0 ひとつ以上のプロセスが選択基準にマッチした。
1 マッチしたプロセスがなかった。
2 コマンドラインに文法エラーがある。
3 致命的エラー: メモリ不足など。
注意
マッチに用いられるプロセス名は /proc/pid/stat の出力にある 15 文字ま で
に制限されている。完全なコマンドラインである /proc/pid/cmdline にマッチ
させるには -f オプションを用いること。
動作中の pgerp と pkill プロセスは、自分自身には決してマッチしない。
バグ
-n, -o, -v は同時に指定できない。これをしたい場合は私に連絡して欲しい。
消滅したプロセスも報告されてしまう。
関連項目
ps(1), regex(7), signal(7), killall(1), skill(1), kill(1), kill(2)
標準
pkill と pgrep は Sun の Solaris 7 で導入された。この実装は完全に互換で
ある。
著者
Kjetil Torgrim Homme
PGREP(1) Linux User’s Manual PGREP(1)
NAME
pgrep, pkill - look up or signal processes based on name and other
attributes
SYNOPSIS
pgrep [-flvx] [-d delimiter] [-n|-o] [-P ppid,...] [-g pgrp,...]
[-s sid,...] [-u euid,...] [-U uid,...] [-G gid,...]
[-t term,...] [pattern]
pkill [-signal] [-fvx] [-n|-o] [-P ppid,...] [-g pgrp,...]
[-s sid,...] [-u euid,...] [-U uid,...] [-G gid,...]
[-t term,...] [pattern]
DESCRIPTION
pgrep looks through the currently running processes and lists the pro-
cess IDs which matches the selection criteria to stdout. All the cri-
teria have to match. For example,
pgrep -u root sshd
will only list the processes called sshd AND owned by root. On the
other hand,
pgrep -u root,daemon
will list the processes owned by root OR daemon.
pkill will send the specified signal (by default SIGTERM) to each pro-
cess instead of listing them on stdout.
OPTIONS
-d delimiter
Sets the string used to delimit each process ID in the output
(by default a newline). (pgrep only.)
-f The pattern is normally only matched against the process name.
When -f is set, the full command line is used.
-g pgrp,...
Only match processes in the process group IDs listed. Process
group 0 is translated into pgrep’s or pkill’s own process group.
-G gid,...
Only match processes whose real group ID is listed. Either the
numerical or symbolical value may be used.
-l List the process name as well as the process ID. (pgrep only.)
-n Select only the newest (most recently started) of the matching
processes.
-o Select only the oldest (least recently started) of the matching
processes.
-P ppid,...
Only match processes whose parent process ID is listed.
-s sid,...
Only match processes whose process session ID is listed. Ses-
sion ID 0 is translated into pgrep’s or pkill’s own session ID.
-t term,...
Only match processes whose controlling terminal is listed. The
terminal name should be specified without the "/dev/" prefix.
-u euid,...
Only match processes whose effective user ID is listed. Either
the numerical or symbolical value may be used.
-U uid,...
Only match processes whose real user ID is listed. Either the
numerical or symbolical value may be used.
-v Negates the matching.
-x Only match processes whose name (or command line if -f is speci-
fied) exactly match the pattern.
-signal
Defines the signal to send to each matched process. Either the
numeric or the symbolic signal name can be used. (pkill only.)
OPERANDS
pattern
Specifies an Extended Regular Expression for matching against
the process names or command lines.
EXAMPLES
Example 1: Find the process ID of the named daemon:
unix$ pgrep -u root named
Example 2: Make syslog reread its configuration file:
unix$ pkill -HUP syslogd
Example 3: Give detailed information on all xterm processes:
unix$ ps -fp $(pgrep -d, -x xterm)
Example 4: Make all netscape processes run nicer:
unix$ renice +4 ‘pgrep netscape‘
EXIT STATUS
0 One or more processes matched the criteria.
1 No processes matched.
2 Syntax error in the command line.
3 Fatal error: out of memory etc.
NOTES
The process name used for matching is limited to the 15 characters
present in the output of /proc/pid/stat. Use the -f option to match
against the complete command line, /proc/pid/cmdline.
The running pgrep or pkill process will never report itself as a match.
BUGS
The options -n and -o and -v can not be combined. Let me know if you
need to do this.
Defunct processes are reported.
SEE ALSO
ps(1) regex(7) signal(7) killall(1) skill(1) kill(1) kill(2)
STANDARDS
pkill and pgrep were introduced in Sun’s Solaris 7. This implementa-
tion is fully compatible.
AUTHOR
Kjetil Torgrim Homme
Copyright(C) linux-cmd.com All Rights Reserved. Author Takayuki Yukawa