連載
» 2016年03月29日 05時00分 UPDATE

Linux基本コマンドTips(7):【 pstree 】コマンド――プロセスの親子関係を分かりやすく表示する

本連載は、Linuxのコマンドについて、基本書式からオプション、具体的な実行例までを紹介してきます。今回は、「pstree」コマンドです。

[西村めぐみ,@IT]
「Linux基本コマンドTips」のインデックス

Linux基本コマンドTips一覧

 本連載では、Linuxの基本的なコマンドについて、基本的な書式からオプション、具体的な実行例までを分かりやすく紹介していきます。今回は、プロセスの親子関係を分かりやすく表示する「pstree」コマンドです。

pstreeコマンドとは?

 「pstree」は、現在動作しているプロセスをツリー形式で表示するコマンドです。「どのプロセスからどのプロセスが起動しているのか」という“親子関係”が分かりやすく表示されるので、システムの仕組みを学習するのにも役立ちます。


pstreeコマンドの書式

pstree [オプション] [プロセスIDまたはユーザー名]

※[ ]は省略可能な引数を示しています



pstreeの主なオプション

 pstreeコマンドのオプションは次の通りです。

短いオプション 長いオプション 意味
-a --arguments コマンドラインの引数も表示する
-p --show-pids プロセスIDを表示する
-l --long 長い行で表示する
-s プロセスID --show-parents=プロセスID 指定したプロセスの親を表示する
-h --highlight-all カレントプロセスとその先祖のプロセスを強調表示する
-H プロセスID --highlight-pid=プロセスID 指定したプロセスとその先祖のプロセスを強調表示する
-A --ascii ASCII文字で表示する
-U --unicode UTF-8のけい線文字で表示する


全てのプロセスをツリー形式で表示する

 pstreeを単独で実行すると、全てのプロセスがツリー形式で表示されます。かなりの量なので「more」コマンドなどと組み合わせて表示するとよいでしょう。この時、けい線が自動で「−」や「+」などの記号になりますが、けい線文字を使いたい場合は「-U」オプション(--unicodeオプション)を使用します(画面1)。

コマンド実行例

pstree

pstree -U | more


画面1 画面1 「pstree」で全てのプロセスをツリー形式で表示。「more」で表示するため「-U」オプションでけい線文字を使用するよう指定している


自分が実行しているプロセスを表示する

 「pstree ユーザー名」で、指定したユーザーのプロセスが表示されます(画面2)。

コマンド実行例

pstree ユーザー名


画面2 画面2 「pstree ユーザー名」で指定したユーザーのプロセスを表示(ここでは自分のプロセスを表示している)

 CUI(Character User Interface)環境の場合はシェルとpstreeコマンドのみのさみしい表示になるかもしませんが、GUI(Graphical User Interface)環境の場合はもっと“にぎやか”な表示になります。この場合、「-h」オプション(--highlight-all)で現在のプロセスを強調表示すると、もっと分かりやすくなります(画面3)。

画面3 画面3 GUI環境で「pstree ユーザー名」を実行(途中省略しています)


指定したプロセスの先祖を表示する

 「pstree プロセスID」で、指定したプロセスが子プロセスと共に表示されます。例えば、現在使用しているシェルのIDが「2414」だった場合、「pstree 2414」と実行すれば、bashとpstreeが表示されることになります。なお、プロセスIDはpsコマンドで調べることができます(画面4)。

コマンド実行例

pstree プロセスID


画面4 画面4 「ps」で現在使用しているシェル(bash)のプロセスIDを調べ、「pstree」でそのプロセスIDを表示している

 ここで、「-H」オプション(--highlight-pid=)を使うと、指定したプロセスの親、その親……を含めて表示することができます(画面5)。親プロセスとその親……をまとめて、“先祖プロセス”のように呼びます。

コマンド実行例

pstree -H プロセスID


画面5 画面5 「pstree -H プロセスID」で指定したプロセスを先祖プロセスも含めて表示。「more」で表示しているため「-U」オプションも併用している

 なお、「-H」オプションは、現在のプロセスを含むツリーを強調表示するオプションです。GUI環境では強調表示を確認することができます(画面6)。

画面6 画面6 GUI環境での実行(途中省略しています)


筆者紹介

西村 めぐみ(にしむら めぐみ)

PC-9801N/PC-386MからのDOSユーザー。1992年より生産管理のパッケージソフトウェアの開発およびサポート業務を担当。のち退社し、専業ライターとして活動を開始。著書に『図解でわかるLinux』『らぶらぶLinuxシリーズ』『はじめてでもわかるSQLとデータ設計』『シェルの基本テクニック』など。2011年より、地方自治体の在宅就業支援事業にてPC基礎およびMicrosoft Office関連の教材作成およびeラーニング指導を担当。


Copyright© 2017 ITmedia, Inc. All Rights Reserved.

@IT Special

- PR -

TechTargetジャパン

この記事に関連するホワイトペーパー

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。