名前

pstree - プロセスのツリーを表示します

書式

pstree [-a, --arguments] [-c, --compact-not] [-C, --color attr] [-g, --show-pgids] [-h, --highlight-all, -H pid, --highlight-pid pid] [-l, --long] [-n, --numeric-sort] [-N, --ns-sort ns] [-p, --show-pids] [-s, --show-parents] [-S, --ns-changes] [-t, --thread-names] [-T, --hide-threads] [-u, --uid-changes] [-Z, --security-context] [-A, --ascii, -G, --vt100, -U, --unicode] [pid, user]
pstree -V, --version

説明

pstree は実行中のプロセスをツリー形式で表示します。 このツリーは pid を起点としますが、pid が省略された場合は init を起点とします。 ユーザー名が指定されると、そのユーザーのプロセスを起点とするプロセスツリーがすべて表示されます。

同じ内容の分岐があると、pstree はそれらを角カッコでくくり、繰り返し数を前に表示します。 例として、


    init-+-getty
         |-getty
         |-getty
         `-getty

は以下のようになります。


    init---4*[getty]

子プロセスは親プロセスの下に位置して、 そのプロセス名は波カッコにくくられて表示されます。 つまり以下のようになります。


    icecast2---13*[{icecast2}]

pstreepstree.x11 として呼び出された場合は、 最終行を表示して、 ユーザーへのリターン入力を求めるプロンプトを表示します。 最終行に至るまでプロンプト表示されません。 X 端末において pstree を実行する際には便利です。

特定のカーネルやマウントパラメーター、 たとえば procfs における hidepid のようなものが用いられていると、 プロセスの情報が隠される場合があります。 このような状況において pstree は、 そういった情報を用いずにツリーを構成するようにします。 その場合には、プロセス名にクエスチョンマークをつけます。

オプション

-a

コマンドライン引数を表示します。 プロセスのコマンドラインがスワップアウトされている場合、 そのプロセスはカッコでくくられて表示されます。 -a を指定すると、 プロセスをまとめる表示を無効になります。 ただしスレッドの表示は変わりません。

-A

ツリー表示に ASCII 文字を用います。

-c

同じ内容のサブツリーをまとめて表示しません。 デフォルトでは、可能な限りサブツリーをまとめられます。

-C

指定された属性を使ってプロセス名をカラー表示します。 現在のところ pstree が受けつける値は age のみです。 これは、プロセス年齢によって色づけを行うものです。 プロセスが 60 秒までのものは緑、1 時間までのものは黄色、それ以外は赤で表示されます。

-g

PGID (Process Group ID) を表示します。 PGID は、 各プロセス名の後ろに、カッコでくくった 10 進数値で表されます。 PID と PGID の両方が表示される場合は、 先に PID が表示されます。

-G

VT100 の 罫線文字 (line drawing character) を用います。

-h

カレントプロセスとその先祖のプロセスを強調表示します。 ターミナルが強調表示をサポートしていないか、 あるいはカレントプロセスとその先祖のいずれもが、 表示されているツリーに属していなければ、 この指定は何も行いません。

-H

-h と同様ですが、 さらに指定されたプロセスは強調表示されます。 -h の場合とは違って、 強調表示ができない場合に -H を利用すると、 pstree の処理は失敗します。

-l

長い行表示を行います。 デフォルトで行表示は、 環境変数 COLUMNS かディスプレイ幅によって切り詰められます。 どちらの方法でもうまくいかない場合は、 デフォルト幅 132 が用いられます。

-n

同じ親を持つプロセスどうしを、 名前でなく PID でソートします (数値ソート)。

-N

指定された名前空間のタイプごとにツリーを表示します。 指定可能なタイプは以下のものです。 ipc, mnt, net, pid, time, user, uts 。 通常のユーザーは、 別ユーザーのプロセス情報にはアクセスできないため、 この出力には限りがあります。

-p

PID を表示します。 PID は10進数でプロセス名の後にカッコつきで表示されます。 -p をつけると、 ツリーのまとめ表示は行いません。

-s

指定するプロセスの親プロセスを表示します。

-S

名前空間の遷移を表示します。 -N と同様、 通常のユーザーが実行する場合には、 この出力に限りがあります。

-t

可能ならスレッドの完全な名前を表示します。

-T

スレッドは表示せず、 プロセスのみ表示します。

-u

uid の遷移を表示します。 プロセスの uid が親の uid とは異なる場合は、 プロセス名の後ろに、その新たな uid がカッコにくくられて表示されます。

-U

UTF-8 (Unicode) の罫線文字 (line drawing character) を利用します。 Linux 1.1-54 以降において、コンソールは echo -e ' 33%8' によって UTF-8 モードとなり、 echo -e ' 33%@' によりそのモードが終了します。

-V

バージョン情報を表示します。

-Z

プロセスの現在のセキュリティ属性を表示します。 SELinux システムの場合は、 これがセキュリティコンテキストとなります。

ファイル

/proc

proc ファイルシステムがあるディレクトリ。

バグ

キャラクターセットの中には VT100 キャラクターと互換性のないものがあります。

関連項目

ps(1), top(1), proc(5).