Linux, コマンド · 1 min read · Sep 20, 2025

初心者のためのLinux topコマンドチュートリアル (8つの例)

Linuxコマンドラインで作業していると、どのプロセスが最もCPUやメモリを消費しているかなど、プロセスに関連する詳細を確認したいと思うことがあります。そんな時に便利なのが、topというコマンドです。このチュートリアルでは、いくつかのわかりやすい例を使ってこのツールについて説明します。

ただし、その前に、この記事で紹介するすべての例は、Ubuntu 16.04 LTSマシンでテストされていることをお伝えしておきます。

Linux topコマンド

topコマンドは、Linuxカーネルによって現在管理されているプロセスやスレッドのリストを表示し、それに関連する有用な情報を提供します。以下はツールの構文です:

top [options]

そして、ツールのマニュアルページには次のように記載されています:

       topプログラムは、実行中のシステムの動的リアルタイムビューを提供します。システムの概要情報を表示することができ、Linuxカーネルによって現在管理されているプロセスやスレッドのリストも表示します。表示されるシステム概要情報の種類や、プロセスに表示される情報の種類、順序、サイズはすべてユーザーが設定可能で、その設定は再起動を通じて持続可能です。

       このプログラムは、プロセス操作のための限られたインタラクティブインターフェースを提供するとともに、操作のすべての側面を網羅するはるかに広範な個人設定インターフェースも提供します。

以下は、topコマンドがどのように機能するかを理解するためのQ&A形式の例です。

Q1. topの使い方は?

シンプルです。オプションなしで’top’コマンドを実行するだけです:

top

私のシステムで生成された出力は次のとおりです:

topコマンドの使い方

スクリーンショットに表示されているのは、生成されたリアルタイム出力のスナップショットに過ぎないことに注意してください(固定の間隔で変更されます)。

Q2. topコマンドの出力を理解するには?

最初の行から始めましょう。そこには(その順序で)現在の時刻、システムが稼働している時間、アクティブなユーザーセッション、システムの平均負荷(それぞれ過去1分、5分、15分)に関するエントリが含まれています。

2行目には、(その順序で)プロセスの総数、実行中のプロセスの数、スリープ中のプロセスの数、停止したプロセスの数、ゾンビ状態のプロセスの数に関する情報が含まれています。

3行目にはCPU使用情報が含まれています。以下は詳細です:

           us, user    : 非優先ユーザープロセスの実行時間
           sy, system  : カーネルプロセスの実行時間
           ni, nice    : 優先度付きユーザープロセスの実行時間
           id, idle    : カーネルアイドルハンドラでの時間
           wa, IO-wait : I/O完了を待っている時間
           hi : ハードウェア割り込みの処理にかかる時間
           si : ソフトウェア割り込みの処理にかかる時間
           st : ハイパーバイザーによってこのVMから盗まれた時間

次の2行はRAMとスワップメモリの使用に関する情報を示しています。最後に、プロセスに関連する情報が表示されます。これには(その順序で)プロセスID、プロセスを所有するユーザー、プロセスの優先度、プロセスのnice値、プロセスが使用している仮想、物理、および共有メモリ、プロセスの状態(スリープ中、実行中、またはゾンビ)、CPUおよびRAMの使用状況、アクティビティの時間、プロセスを開始したコマンドが含まれます。

Q3. top出力からプロセスを終了するには?

これは非常に簡単です。’k’を押すと、topは終了したいプロセスのPIDを尋ねてきます。プロセス列のヘッダーが含まれる行の上に、次のようなメッセージが表示されます:

PID to signal/kill [default pid = 3397]

つまり、プロセスIDを入力するか、デフォルトではtopがリストの最初のプロセスを終了しようとします(SIGTERMを送信)。信号が送信されると、次のようなメッセージが生成されます。

Send pid 3007 signal [15/sigterm]

Q4. プロセスの優先度を変更するには?

‘k’が終了用であるのと同様に、プロセスの優先度を変更したい場合(またはreniceしたい場合)は’r’を押します。’r’を押すと、次のようなメッセージが表示されます:

PID to renice [default pid = 3397] 

したがって、PIDを入力するか、デフォルトではtopがリストの最初のプロセスの優先度をreniceしようとします。例えば、私はPIDを渡し、その後topは新しいnice値を尋ねてきました。

Renice PID 2665 to value

値を入力してEnterを押すと、該当するプロセスのnice値が変更されます。

Q5. topコマンドの更新レートを変更するには?

デフォルトでは、topは3秒ごとに出力を更新しますが、’d’を押すことでこれを調整できます。コマンドは新しい遅延値を入力するように求めます:

Change delay from 3.0 to 

値を入力してEnterを押すだけです。それだけです。

Q6. topコマンドの出力をユーザーに制限するには?

デフォルトでは、topコマンドはすべてのプロセスを表示します。ただし、’u’を押すことで特定のユーザーに出力を制限できます。

Which user (blank for all)

上の行にユーザー名を入力してEnterを押すと、入力したユーザーが所有するプロセスのみが出力に含まれるようになります。

例えば、私は’root’を入力しました。出力は次のとおりです:

topコマンドの出力をユーザーに制限する

Q7. topに引数とともに完全なコマンドを表示させるには?

これは’c’を押すことで実現できます。以下はその例です:

これで、出力に完全なコマンドパスとコマンドライン引数が表示されるようになります。

Q8. インタラクティブなtopコマンドのヘルプを取得するには?

インタラクティブなtopコマンドに関するヘルプを取得するには’h’を押します。出力には利用可能なコマンドとその機能が表示されます。例えば、私のシステムで’h’を押したときに表示された内容は次のとおりです。

インタラクティブなtopコマンドのヘルプを取得する

結論

私たちはここで表面をかすめただけです。topコマンドはもっと多くの機能を提供します。この記事で説明したことを理解し、練習が終わったら、topのマニュアルページにアクセスしてさらに学んでください。

Share: X/Twitter LinkedIn

新しい投稿を受信箱で受け取る

スパムはありません。いつでも購読を解除できます。