top コマンドの使い方 [Linux]

2025/04/27

top コマンドとは?

top コマンドは、Linux/Unix システムで現在のプロセス情報やシステムリソースの使用状況(CPU、メモリ、ロードアベレージなど)をリアルタイムで表示するインタラクティブツールです。


基本構文

top [オプション]

実行すると、動的に更新される画面が表示され、プロセスの一覧やシステム全体のリソース使用状況を確認できます。


表示内容の見方(上部:システム情報)

top - 14:23:45 up 3 days,  2:04,  1 user,  load average: 0.00, 0.01, 0.05
Tasks: 150 total,   1 running, 149 sleeping,   0 stopped,   0 zombie
%Cpu(s):  3.0 us,  0.5 sy,  0.0 ni, 96.5 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
MiB Mem :   7862.5 total,   112.3 free,  3004.2 used,  4746.0 buff/cache
MiB Swap:   2048.0 total,  2048.0 free,     0.0 used.  4620.0 avail Mem
項目説明
load average1分・5分・15分の平均負荷
Tasksプロセスの状態(total: 全体, running: 実行中など)
%Cpu(s)CPU使用率の内訳(us: ユーザー, sy: システム, id: アイドル)
Memメモリの総量・使用量・空き・バッファキャッシュ
Swapスワップ領域の使用状況

プロセス一覧(下部)

PID USER      PR  NI    VIRT    RES    SHR S  %CPU  %MEM     TIME+ COMMAND
説明
PIDプロセスID
USER実行ユーザー
PR / NI優先度 / nice値
VIRT / RES / SHR仮想 / 実メモリ / 共有メモリ
S状態(R: 実行中, S: スリープ, Z: ゾンビ)
%CPU / %MEMCPU / メモリ使用率
TIME+累積CPU時間
COMMAND実行中のコマンド

よく使うインタラクティブ操作

キー説明
qtopを終了
PCPU使用率でソート(大きい順)
Mメモリ使用量でソート
T累積CPU時間でソート
kプロセスをkill(プロセスID入力)
rnice値を変更
1各CPUコアごとの使用状況表示
hヘルプ表示

オプション一覧

オプション説明
-d N更新間隔をN秒に設定
-n N指定回数だけ更新して終了
-bバッチモード(スクリプト用途、非対話形式)
-u USER特定ユーザーのプロセスのみ表示

使用例

CPU使用率順で監視

$ top
(実行後に `P` を押す)

メモリ順に並び替え

$ top
(実行後に `M` を押す)

特定ユーザーのみ表示

$ top -u nginx

非対話形式で1回だけ表示

$ top -b -n 1

よくあるトラブルと対処

問題原因対処法
表示が止まらない対話モードで起動しているq で終了 or -n 1 -b で実行
特定のプロセスが表示されないユーザー/条件でフィルタされている-u 指定や並び替え条件を確認

まとめ

  • top はプロセス・リソース監視の代表ツール
  • P, M, T で動的にソート、k でプロセスkillも可能
  • 非対話形式の -b + -n でスクリプトでも活用できる

参考リンク

  • https://man7.org/linux/man-pages/man1/top.1.html
  • https://linux.die.net/man/1/top

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です