Bash-Befehl htop
2010-01-15 13:49 (Kommentare: 1)
Wie man sehen kann, was der Rechner grad so treibt? Teil 2
Nachdem bereits der Bash-Befehl top ausführlich vorgestellt worden ist, geht es nun um den Befehl htop. Htop zeigt ebenso wie top eine dynamische Programmauflistung an. Standardmässig ist es nach der CPU-Auslastung sortiert und genau wie top kann man umsortieren. Wo liegen jetzt aber die Unterschiede zu top? Das wird nun geklärt werden.
Der Name des Befehls htop ist eine Zusammensetzung des ersten Buchstaben des Vornamens des Entwicklers und dem Befehl top, kurz: es ist Hishams top. Htop ist nicht standardmässig installiert, sondern muss nachinstalliert werden. Bei (K-/X-)Ubuntu geht dies mit dem Befehl:
sudo apt-get install htop
Ist htop dann installiert und aufgerufen worden, sieht die Ausgabe so aus:

Als erstes fällt einem auf, dass es bunt ist, sehr viel bunter als die Ausgabe von top zumindest. Oben links sieht man zuerst, dass mein Rechner zwei Kerne besitz und die Auslastung jedes einzelnen Kerns. Es folgt wieder die Auslastung von RAM (Mem) und Swap. Oben rechts beginnt die Ausgabe mit den laufenden Task (Prozessen oder Jobs) und den gerade ausgeführten Jobs (running). Es folgt auch wieder der Load Average, wie bei top mit den drei Durchschnittswerten, und die Uptime des Rechners. Diesmal ist mein Rechner also bereits fast 3 Stunden an, als ich den Scrennshot der Ausgabe mache.
Auch der zweite Teil der Ausgabe ähnelt top sehr stark. Die Spaltenbezeichnung ist dieselbe, nur die Ausgabe unterscheidet sind in einem Punkt - nämlich in der letzten Spalte, der Command-Spalte. Hier wird nicht mehr nur der Name des Programmes angegeben sondern der gesamte Pfad des Programmes. Soll dies nun aber der einzige Unterschied zwischen htop und top sein?
Nein natürlich nicht, sonst würde sich der Artikel nicht wirklich lohnen. Zu erst einmal ist htop vertikal und horizontal scrollbar, um alle Prozesse und Angaben sehen zu können. Es reagiert auf Mauseingaben genauso wie auf Tastatureingaben. Es ist möglich eine Zeile farbig zu markieren, um sie verfolgen zu können. Htop soll laut Entwickler auch eine schnellere Ausgabe haben. Das Programm soll also schneller eine Augabe erzeugen als top. Persönlich muss ich dazu sagen, wenn dem so ist, muss es sich um Bruchteile von Sekunden handeln, den sichtbar ist es für mich nicht.
Nun zu den Besonderheiten von htop, die ich ausführlicher besprechen möchte. Es ist zum einen möglich Prozesse ohne PID zu beenden und der Nice-Wert kann ebenfalls ohne PID geändert werden. Bei top ist das nicht so. Top benötigt zum Beenden eines Prozesses die PID. Will ich bei top also einen Prozess beenden oder auch killen, dann muss ich zuerst k drücken (für kill). Es folgt die Eingabe der PID. Bei htop hingegen markiere ich das Programm entweder mit der Maus oder den Pfeiltaste, ich wähle F9 und betätige enter. Genauso funktioniert die Vergabe von neuen Nice-Werten, nur wähle ich hier anstelle von F9 (kill) F8 (Nice). Top benötigt hierfür die Eingabe der PID.
Des Weiteren hat htop viele offensichtliche Einstellungmöglichkeiten. Es ist nicht nötig sich zuerst die Manpage durchzulesen, um Einstellungen durch Optionen zu verändern.
Beendet wird auch dieses Programm durch die Eingabe von q oder das Drücken der Tastenkombination Strg+c. Dann verschwindet die Ausgabe allerdings und ist nicht mehr zusehen. Anders bei top, da bleibt die letzte Ausgabe stehen und man kann sich beispielsweise bestimmte PIDs noch raussuchen.
Ich freue mich wieder über Kommentare von Euch. Was benutzt ihr denn lieber htop oder top?
Nachtrag: Der Entwickler merkt auch noch an, dass einer der Unterschiede von htop zu top ist, dass top das ältere Programm ist, demnach ist es häufiger getestet und gebraucht worden.
Nachtrag2: Für Neulinge empfehle ich den Artikel 'Bash-Befehl top' zuerst zu lesen.
Einen Kommentar schreiben
Kommentar von Schumbi | 2010-03-23
Hallo :-)
Ein sehr schöne Artikel über ein sehr schönes Programm. Ich nutze es auch recht häufig und mittlerweile wesentlich lieber als top.
Allerdings ist es in meinen Augen nicht ganz richtig von "bash Programm" zu sprechen. Das Programm tut seinen Dienst auch unter anderen Eingabeaufforderungen. :-) Die Bash mag ziemlich weit verbreitet sein, doch gibt es da noch mehr.
Befehle wie 'pwd' ohne Pfad eingetippt sind so genannte 'bash builtins', weitere sind in der man-Page zur Bash zu finden. Befehle wie top und htop hingegen sind eigenständige Programme.
liebe Grüße
Schumbi
PS: Schön, dass Dein Blog den Weg in den UU-Planeten gefunden hat.