web-dev-qa-db-ja.com

メモリ使用量でソートされた「上位」の結果をリアルタイムで表示する方法は?

topの結果をリアルタイムで端末に表示して、メモリ使用量でリストをソートするにはどうすればよいですか?

421
Theodor Coogan

Linux/Unixでtopコマンドを使用します。

top
  • 押す shift+m topコマンドを実行した後
  • または、ソートする列をインタラクティブに選択することもできます
    • 押す Shift+f インタラクティブメニューに入る
    • を押す up または down %MEM選択肢が強調表示されるまで矢印
    • 押す s %MEMを選択する
    • 押す enter 選択を保存するには
    • 押す q インタラクティブメニューを終了するには

または、コマンドラインでソート順を指定します

# on OS-X
top -o MEM
# other distros
top -o %MEM

参考文献

https://stackoverflow.com/questions/4802481/how-to-see-top-processes-by-actual-memory-usage

487
Ramesh

コマンドラインオプション-o(「Override-sort-field」の略)は、私のXubuntuマシンでも機能し、 に従ってMacのmanページのトップ に従って動作するはずです。 Macintoshでも動作します。メモリ使用量でショートしたい場合は、通常使用します

top -o %MEM

%MEMで並べ替えます。しかし、VIRTRES、またはSHRも使用できます。 Macintoshでは、おそらくmemまたはvsizeを使用します。

理由や方法はわかりませんが、これはUnixシステム間やLinuxディストリビューション間でもかなり異なります。たとえば、-oは、Wheezyを実行している私のラズベリーでも利用できません。しかし、それを試してみる価値があるかもしれません。

106
ytg

Ubuntu 14.04の場合

htop -s PERCENT_MEM

私のためにトリックをしました。

16
Borjovsky

-oフラグは実際の列名を取るようです。したがって、topコマンドが「mem」のみを表示する場合、コマンドは"top-o mem"である必要があります。

私がテストしているubuntuマシンの場合、列は"%MEM"と呼ばれます。私が試したOSXヨセミテでは"mem"です。

14
GlennTPeace

topがすでに実行されている場合は、 o 。データの上に、プロンプトが表示されます。

primary key [xxxxx]:

ここで、xxxxxは現在の並べ替えキーです。並べ替えに使用する列の名前を入力します。列名に「%」または「#」が含まれている場合は、文字を省略してください。 %CPUの場合は、「cpu」と入力します。

8
George Boutin

元の質問はMacに関するもののようですが、この回答に出くわした他の誰にとっても、Red Hat Linux(および他の多く)では、「top -m」がメモリ使用量でソートされた結果で先頭から始まります。

6
Anthony

Linuxでは、次を実行:

$ top

次に、 Shift + M

4
JBaczuk

Ubuntuに付属するtoptop -v = procps-ng version 3.3.10)を使用している場合は、これらのインタラクティブなキーボードショートカットを使用して並べ替えを変更できます。これらはすべて大文字であるため、shiftまたはcaps lockを使用してください。

M%MEM
N PID
P%CPU
T TIME +

デフォルトでは、DESC順にソートされます。 Rを使用して、ASC/DESCを切り替えます。

コマンドラインオプションから並べ替えを設定するには、top -o %MEMを使用します。任意の列を指定できます。

2
wisbucky

Ubuntu 14.04-これは問題なく動作します:

htop --sort-key=PERCENT_MEM