{category}

Linux - プロセス管理

top

トップ(システム管理

意味 リアルタイムプロセス監視


topとは?

topコマンドは、システムのプロセスをリアルタイムで監視するLinuxのコマンドです。CPUやメモリの使用率が高いプロセスを確認したり、システムの全体的な状態を把握したりするのに役立ちます。

topの具体的な使い方

リアルタイムシステムモニタリング

$ top

👇出力結果

top - 14:30:22 up  5:10,  2 users,  load average: 0.15, 0.22, 0.25
Tasks: 213 total,   1 running, 212 sleeping,   0 stopped,   0 zombie
%Cpu(s):  1.7 us,  1.0 sy,  0.0 ni, 97.3 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
MiB Mem :   7861.1 total,   4567.2 free,   2345.6 used,    948.3 buff/cache
MiB Swap:   2048.0 total,   2048.0 free,      0.0 used.   5123.4 avail Mem 

    PID USER      PR  NI    VIRT    RES    SHR S  %CPU  %MEM     TIME+ COMMAND
   1234 user      20   0  162.3m  23.8m  13.8m S   2.0   0.3   0:01.23 process1
   5678 root      20   0  293.6m  34.5m  22.1m S   1.3   0.4   2:30.56 process2

システムの概要と、最もリソースを消費しているプロセスの一覧をリアルタイムで表示します。表示は定期的に更新され、システムの現在の状態を継続的に監視できます。

特定ユーザーのプロセス表示

$ top -u username

👇出力結果

top - 14:32:10 up  5:12,  2 users,  load average: 0.18, 0.20, 0.23
Tasks: 213 total,   1 running, 212 sleeping,   0 stopped,   0 zombie
%Cpu(s):  1.5 us,  0.9 sy,  0.0 ni, 97.6 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
MiB Mem :   7861.1 total,   4570.5 free,   2342.3 used,    948.3 buff/cache
MiB Swap:   2048.0 total,   2048.0 free,      0.0 used.   5126.7 avail Mem 

    PID USER      PR  NI    VIRT    RES    SHR S  %CPU  %MEM     TIME+ COMMAND
   1234 username  20   0  162.3m  23.8m  13.8m S   2.0   0.3   0:01.45 process1
   5678 username  20   0  145.6m  20.5m  15.1m S   1.0   0.3   0:00.78 process2

指定したユーザーが実行しているプロセスのみを表示します。これにより、特定ユーザーのリソース使用状況を集中的に監視できます。

バッチモードでの使用

$ top -b -n 1 | head -n 20

👇出力結果

top - 14:34:05 up  5:14,  2 users,  load average: 0.10, 0.15, 0.20
Tasks: 214 total,   1 running, 213 sleeping,   0 stopped,   0 zombie
%Cpu(s):  1.2 us,  0.8 sy,  0.0 ni, 98.0 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
MiB Mem :   7861.1 total,   4575.8 free,   2337.0 used,    948.3 buff/cache
MiB Swap:   2048.0 total,   2048.0 free,      0.0 used.   5132.0 avail Mem 

    PID USER      PR  NI    VIRT    RES    SHR S  %CPU  %MEM     TIME+ COMMAND
   1234 user      20   0  162.3m  23.8m  13.8m S   1.3   0.3   0:01.67 process1
   5678 root      20   0  293.6m  34.5m  22.1m S   0.7   0.4   2:31.23 process2
   9012 user      20   0  125.4m  18.2m  12.5m S   0.3   0.2   0:00.45 process3

topをバッチモードで1回だけ実行し、その結果の最初の20行を表示します。これにより、現在のシステム状態のスナップショットを簡単に取得できます。

topに関するよくある質問

Q. topコマンドの更新間隔の変更方法
A. topコマンドの更新間隔は、実行時に'-d'オプションを使用するか、実行中に's'キーを押して変更できます。例えば、'top -d 5'とすると5秒ごとに更新されます。
Q. 特定のプロセスのみを表示するには
A. topコマンド実行中に'o'または'O'キーを押し、フィルター条件を入力することで、特定のプロセスのみを表示できます。例えば、'COMMAND=python'と入力すると、Pythonプロセスのみが表示されます。
Q. topの表示をソートするには?
A. topコマンド実行中に特定のキーを押すことで、異なる基準でソートできます。例えば、'P'キーでCPU使用率順、'M'キーでメモリ使用率順にソートできます。'<'や'>'キーでソート列を変更することも可能です。

topが学べる書籍の紹介

「プログラミング単語帳」を使って、プログラミングの単語を英単語のように学習してみませんか?
プログラミング単語帳には、Linuxのtopやnohup、cron、yum、などのような実務でよく使われる単語が数百以上収録されています。
この書籍には、プログラミングの単語の意味や読み方、単語の使い方がわかる例文などが掲載されており、いつでもどこでもプログラミングの学習ができます。

よく使われる単語にだけ絞って学習することができるので、効率的にプログラミングが学習できます。

1日5分の暗記でプログラミンが身に付く!プログラミング単語帳 公式ストアで発売中!

HTML編、CSS編、JavaScript編、PHP編、Ruby編、その他単語編の6シリーズ分が公式ストアにて販売中です。気になった方はぜひ購入してみてください。


Linuxを学べる「プログラミング単語帳」アプリ

プログラミング単語帳がアプリになりました!Linuxはもちろん、10種類のプログラミング言語の中から、よく使われる単語をスマホで学習できます。

収録単語は2,000単語以上!
現在は、HTML、CSS、JavaScirpt、PHP、Laravel、Ruby、Python、MySQL、Linux、など10カテゴリーの単語帳が1つのアプリに収録されています。

いつでも、どこでも、隙間時間を有効活用して、プログラミングを効率的に学べるので、ぜひダウンロードしてみてください。

2024年7月アップデート情報:「Laravel」カテゴリーが追加されましました!

2024年8月アップデート情報:「MySQL」「Linux」カテゴリーが追加されましました!


関連するそのほかの単語

nohup

ログアウト後もプロセスを継続

種類: ジョブ管理

cron

定期的なジョブの自動実行

種類: ジョブ管理

yum

RPM系のパッケージ管理

種類: パッケージ管理

uniq

重複行を除去する

種類: テキスト操作

systemd

現代的なシステム管理ツール

種類: システム初期化