Home arrow よく使うLinuxコマンド
プリント
サーバー管理でよく使うコマンド コマンドMenu

ps


起動中のプロセスの状態を表示します。

■よく使う形(例)

※プロセスの詳細情報を表示する。
# ps -el


※端末に結びつけたすべてのプロセスの状態を詳細に表示します。
# ps aux


一般的にもよく使うコマンドです。
オプションが豊富で、プロセスの状態をいろいろな形で見つけることができます。
例えば、「開発中のプログラムを実行したら、なかなか帰ってこなくなった」という場合、psコマンド を使うと、CPUやメモリの使用率から、無限ループが見つかったりします。(あまりいい例えではないですが....。) こんなときプロセスIDをpsコマンドで調べて、強制終了を行います。(killコマンド
その他、auxの組み合わせのオプションを使うと、より詳しくプロセスを見ることができます。プロセスの親子関係や、バックエンドで実行されているプロセスの識別など、容易に行うことができます。

このpsコマンド、ちょっとオプションが変わっています。その昔、UNIXはBSD系とSystemV系とで別々に開発されてきました。基本的に同じ UNIXではありますが、使い勝手が少し違っていました。Linuxはそんなことも考えてか、psコマンドでは、両方のオプションが使えたりします。ハイ フン(-)を使うのが、SystemV系ですね。


■主な出力データの見方

項目 意味 コメント
UID ユーザーID  
PID プロセスID このプロセスのID。killコマンドなどでも使用する。
PPID 親のプロセスID 呼び出された親のプロセスID
PRI プライオリティ 実行のプライオリティ(優先度)です。数値が小さいほど優先度が高い。
NI ナイス値  
WCHAN カーネル関数名 プロセスが休眠している時のカーネル関数名
TTY 端末の種類 端末の種類と端末番号を表示。
USER 実行ユーザー名  
RSS プロセスの実メモリサイズ  
STAT ステータス プロセスのステータス
R:実行可能 S:停止プロセス Z:ゾンビプロセス W:スワップアウトしたプロセス
START 開始時刻 プロセスの開始時刻
TIME 実行時間  
CMD
COMMAND
実行コマンド オプションにa,u,xを使うと、プログラムの絶対パスを見ることができる。プロセスがどのように実行されているかがよくわかる。


■主なオプション

オプション 機能説明
-l 詳細を表示。
-e すべてのプロセスを表示。
a 端末に紐づけたプロセスをすべて表示する。
u CPU使用率、メモリ使用率、開始時間などの詳細情報を表示する。
x 端末に紐づかないプロセスもすべて表示。