Wie kann man die "Top" -Ergebnisse sortiert nach Speichernutzung in Echtzeit anzeigen?

375

Wie kann ich die topErgebnisse in meinem Terminal in Echtzeit anzeigen , damit die Liste nach Speichernutzung sortiert wird?

Theodor Coogan
quelle
24
Unter Linux >und <die Sortierspalte rechts und links bewegen. Da sich die %MEMSpalte genau rechts von der %CPUSpalte befindet, die auch die Standardsortierspalte ist, ist nur ein Tastendruck erforderlich, um zwischen den beiden zu wechseln. Ich weiß, Ihre Frage hat das Macintosh-Tag, deshalb schreibe ich diese Antwort als Kommentar.
Walter Tross
5
Ich bevorzuge htop, vor allem, weil es mir sagt, wie das geht.
Lindhe

Antworten:

424

Verwenden Sie den topBefehl unter Linux / Unix:

top
  • Drücken Sie shift+, mnachdem Sie den topBefehl ausgeführt haben
  • oder Sie können interaktiv auswählen, nach welcher Spalte sortiert werden soll
    • Drücken Sie Shift+ f, um das interaktive Menü aufzurufen
    • Drücken Sie die Pfeiltaste upoder, downbis die %MEMAuswahl markiert ist
    • Drücken Sie s, um die %MEMAuswahl zu bestätigen
    • Drücken Sie enter, um Ihre Auswahl zu speichern
    • Drücken Sie q, um das interaktive Menü zu verlassen

Oder geben Sie die Sortierreihenfolge in der Befehlszeile an

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

Verweise

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

Ramesh
quelle
2
Unter Linux ist es top -o %MEM(beachten Sie die "%")
Gabriel Hautclocq
@ GabrielHautclocq Es muss von Ihrer Linux-Distribution und dem mitgelieferten Paket abhängen. Debian 7 verwendet procps-ngund es gibt überhaupt keine -oOption in dieser Version. SHIFT-Mklappt bei mir sobald topdas lanciert ist.
Christopher Schultz
top -o %MEMFunktioniert auf meinem Debian 8 und 9, aber nicht auf Debian 7, Sie haben recht @Christopher Schultz.
Gabriel Hautclocq
Anstelle von <key> enter </ key> sollte es <key> q </ key> sein
Gedankenstriche
99

Die Befehlszeilenoption -o(o steht für "Override-sort-field") funktioniert auch auf meinem Xubuntu-Computer und sollte laut der Mac-Manpage oben auch auf einem Macintosh funktionieren. Wenn ich nach Speicherbedarf kurzschließen möchte, verwende ich normalerweise

top -o %MEM

die nach der Spalte sortiert %MEM. Aber ich kann es benutzen VIRT, RESoder SHRauch. Auf einem Macintosh würde ich wahrscheinlich memoder verwenden vsize.

Ich weiß nicht warum oder wie, aber das ist ziemlich unterschiedlich zwischen Unix-Systemen und sogar zwischen Linux-Distributionen. Zum Beispiel -oist nicht einmal auf meinem Himbeerlauf Wheezy verfügbar. Es könnte sich jedoch lohnen, es zu versuchen.

ytg
quelle
2
Die Antwort könnte dem Benutzer mehr Klarheit verschaffen: Sie %MEMwird dem eifrigen Leser als Antwort gegeben; während es (bei weitem) nicht überall funktioniert.
7heo.tk
1
Für das Macbook 2014 heißt es:top -o %MEM invalid argument -o: %MEM
anon58192932
Es tut mir leid das zu hören.
ytg
Dies ist die einzige Antwort, die tatsächlich bei Centos funktioniert hat.
Amalgovinus
1
@ anon58192932 Sie sollten %MEM(oder PID, VIRTusw.) durch einen beliebigen Spaltennamen ersetzen , der topnur bei der Ausführung angezeigt wird . Wie von ytg bemerkt , würde ich auf einem Macintosh wahrscheinlich memoder verwenden vsize.
Ebosi
14

Es scheint, als würde das Flag -o den tatsächlichen Spaltennamen annehmen. Wenn der Befehl top also nur "mem" anzeigt, sollte der Befehl "top -o mem " lauten .

Für die Ubuntu-Maschine, mit der ich teste, heißt die Spalte "% MEM" . Auf dem OSX Yosemite habe ich versucht, es ist "mem" .

GlennTPeace
quelle
13

Für Ubuntu 14.04 ab

htop -s=MEM

hat den Trick für mich getan.

Borjovsky
quelle
Funktioniert auch unter OSX.
ehime
Es ist ein anderer Befehl. Auf der Suche nach Antwort über den topBefehl (wie in dieser Frage gestellt) nicht htop.
Lukas
7

Wenn topbereits ausgeführt wird, drücken Sie o . Über den Daten wird eine Eingabeaufforderung angezeigt:

primary key [xxxxx]:

Wo xxxxxist der aktuelle Sortierschlüssel? Geben Sie den Namen der Spalte ein, nach der Sie sortieren möchten. Wenn ein Spaltenname "%" oder "#" enthält, lassen Sie das Zeichen weg. Geben Sie für% CPU einfach "cpu" ein.

George Boutin
quelle
6

Die ursprüngliche Frage scheint für einen Mac gewesen zu sein, aber für alle anderen, die über diese Antwort gestolpert sind, beginnt 'top -m' unter Red Hat Linux (und vielen anderen) oben mit Ergebnissen, die nach Speichernutzung sortiert sind.

Anthony
quelle
Nicht auf Debian 8
marcovtwout
Arbeitete an: Red Hat Enterprise Linux Server Release 6.8 (keine der anderen Antworten funktionierte).
Contango
4

Führen Sie unter Linux Folgendes aus:

$ top

Drücken Sie dann Shift+ M.

JBaczuk
quelle
2

Ubuntu 14.04 - das funktioniert einwandfrei:

htop --sort-key=PERCENT_MEM
Коста Великов
quelle
3
htop ist nicht top
Anthon
2

Wenn Sie das topmit Ubuntu ( top -v= procps-ng version 3.3.10) gelieferte verwenden, können Sie diese interaktiven Tastaturkürzel verwenden, um die Sortierung zu ändern. Beachten Sie, dass dies alles Großbuchstaben sind. Verwenden Sie also entweder shiftoder caps lock.

M% MEM
NPID
P% CPU
TTIME +

Standardmäßig werden sie in der DESC-Reihenfolge sortiert. Verwenden Sie Rdiese Taste, um zwischen ASC / DESC umzuschalten.

Verwenden Sie, um die Sortierung über die Befehlszeilenoption festzulegen top -o %MEM. Sie können eine beliebige Spalte angeben.

weises Glück
quelle