はじめに
ps
コマンドは、LinuxやUnix系OSにおいて、現在実行中のプロセスを表示するためのコマンドです。
システムの状態を確認したり、不要なプロセスを見つけたりする際に使用されます。
内容は個人の備忘録レベルの走り書きですが、ご容赦ください。
書こうと思ったきっかけ
システム管理やプログラム開発を行っていると、プロセスの監視や管理が必要になる場面が多くあります。
特に、特定のプロセスが正常に動作しているかの確認や、リソース使用状況を把握することは重要です。
そのため、ps
コマンドの基本的な使い方やオプションについて整理し、まとめることにしました。
基本的な使い方
以下に、ps
コマンドの基本的な使い方を紹介します。
1. 実行中のプロセスを表示
ps
このコマンドを実行すると、現在のシェルで実行中のプロセスのみが表示されます。
実際のターミナル画面
2. すべてのプロセスを表示
ps -e
-e
オプションを付けると、すべてのプロセスが一覧表示されます。
実際のターミナル画面
または、
ps aux
とすると、ユーザーごとのプロセス情報やCPU・メモリ使用率を含めた詳細情報を取得できます。
実際のターミナル画面
よく使われるオプション
オプション | 説明 |
---|---|
-e |
すべてのプロセスを表示 |
-f |
フルフォーマットでプロセス情報を表示 |
-u [ユーザー名] |
指定したユーザーのプロセスを表示 |
-a |
端末に関連するすべてのプロセスを表示 |
-x |
端末に依存しないプロセスも含めて表示 |
aux |
BSDスタイルの出力形式で詳細情報を表示 |
-o |
指定したフォーマットで出力 |
プロセスをフィルタリング
特定のプロセスを検索するには、grep
を組み合わせるのが一般的です。
ps aux | grep nginx
このコマンドは、nginx
に関連するプロセスを検索します。
実際のターミナル画面
プロセスのソート
CPU使用率順にソートする場合:
ps aux | sort -nk 2,2 # CPU使用率順にソート
メモリ使用率順にソートする場合:
ps aux | sort -nk 3,3 # メモリ使用率順にソート
プロセスID(PID)を取得
特定のコマンドのプロセスID(PID)を取得するには、次のようにします。
ps aux | grep nginx | awk '{print $2}'
このコマンドは nginx
のPIDのみを取得できます。
まとめ
ps
コマンドは、プロセスの管理や監視において重要なツールです。ps
を活用することで、システムの負荷状況を確認したり、異常なプロセスを特定したりすることができます。
よく使うコマンドなので、気になったときに試してみてください!