So verwenden Sie den Befehl PS im Linux -Anfängerhandbuch
- 1508
- 175
- Susanne Stoutjesdijk
Der ps
Der Befehl ist ein Standard für die Befehlszeilenproduktion, mit der wir einen Einblick in die Prozesse geben können, die derzeit auf einem Linux -System ausgeführt werden. Es kann uns viele hilfreiche Informationen zu diesen Prozessen geben, einschließlich der PID (Prozess -ID), TTY, dem Benutzer, der einen Befehl oder eine Anwendung ausführt, und mehr.
Während das ziemlich einfach klingt, machen Sie keinen Fehler, die ps
Befehl kann ziemlich kompliziert werden. Es akzeptiert viele verschiedene Optionen und kann in einer unglaublichen Anzahl von Situationen nützlich sein, selbst als Teil eines Bash -Skripts.
In diesem Tutorial stellen wir Ihnen die vor ps
Befehl und gehen Sie all seine hilfreichsten Optionen durch, einschließlich vieler Beispiele. Am Ende des Lesens dieses Handbuchs werden Sie mit allen Informationen bewaffnet, die Sie benötigen, um das Beste aus diesem hilfreichen Befehlszeilen -Tool herauszuholen.
In diesem Tutorial lernen Sie:
- So listen Sie alle auf einem System ausgeführten Prozesse auf
- Wie benutzt man
ps
Befehl über Beispiele
Kategorie | Anforderungen, Konventionen oder Softwareversion verwendet |
---|---|
System | Jede Linux -Distribution |
Software | ps |
Andere | Privilegierter Zugriff auf Ihr Linux -System als Root oder über die sudo Befehl. |
Konventionen | # - erfordert, dass gegebene Linux -Befehle mit Root -Berechtigungen entweder direkt als Stammbenutzer oder mit Verwendung von ausgeführt werden können sudo Befehl$ - Erfordert, dass die angegebenen Linux-Befehle als regelmäßiger nicht privilegierter Benutzer ausgeführt werden können |
So listen Sie alle auf einem System ausgeführten Prozesse auf
Der ps
Der Befehl kann für Anfänger ein wenig verwirrend sein, da er Optionen in einigen verschiedenen Syntaxen akzeptiert. Es ist ein sehr alter Befehl, der seit Anfang der 70er Jahre seinen Weg auf jedes (oder fast alle) UNIX-, BSD- und Linux -System gefunden hat. Daher wurde die aktuelle Iteration angepasst, um Syntaxe von UNIX (Optionen mit einem Armaturenbrett), BSD (Optionen ohne Armaturenbrett) und GNU (Optionen vor, die zwei Striche vorangegangen sind) zu akzeptieren.
Es ist am einfachsten, über das zu lernen ps
Befehl über Beispiele. Verwenden Sie, um zu beginnen, einige der folgenden Befehle in Ihrem eigenen System, und Sie werden es irgendwann beherrschen lassen.
Der folgende Befehl zeigt alle laufenden Prozesse auf dem System und ist wahrscheinlich der am häufigsten verwendete ps
Befehl im Allgemeinen. Wenn es nur eine Sache gibt, an die Sie sich nach dem Lesen dieses Tutorials erinnern, sollte es dieser Befehl sein.
$ PS Aux
Beachten Sie, dass dies die BSD -Syntax verwendet (keine Striche). Die Verwendung der gleichen Optionen in einer anderen Syntax kann ein anderes Ergebnis erzielen. Ja, die Syntax spielt also eine Rolle. Hier ist, was diese Optionen tun:
A
- Zeigen Sie Prozesse von allen Benutzern.u
- Zeigen Sie das benutzerorientierte Format an (Zeigt zusätzliche Informationen zu Ausführungsverfahren an).X
- Listen Sie Prozesse auf, die keiner TTY gehören.
Dies wird wahrscheinlich viel Ausgabe in Ihrem Terminal erzeugen. Sogar auf frisch installierten Systemen werden normalerweise einige Prozesse im Hintergrund ausgeführt, und ps
identifiziert jeden einzelnen. Versuchen Sie, den Befehl an zu leiten weniger
oder mehr
Um die Ausgabe überschaubarer zu machen.
$ PS Aux | wenigerAusgabe des PS Aux -Befehls
Wie Sie sehen können, gibt es einige Spalten in unserer Ausgabe, und einige von ihnen sind möglicherweise kryptisch für Anfänger. Lassen Sie uns übergehen, was jeder bedeutet:
BENUTZER
- Der Benutzer, unter dem der Prozess ausgeführt wird.PID
- Die Prozess -ID (jedem Prozess wird eine Nummer als ID zugewiesen).%ZENTRALPROZESSOR
- Wie viel CPU -Prozentsatz der Prozess nutzt.%Mem
- Wie viel RAM -Prozentsatz der Prozess nutzt.VSZ
- Virtuelle Speichergröße des Prozesses.RSS
- Die physikalische Speichergröße, die der Prozess verwendet.Tty
- Welcher TTY (Terminalbildschirm) der Prozess ist gebunden oder an oder?
für keine.Stat
- Der Staatscode des Prozesses; Es gibt viele, aber einige Gemeinsame sindS
(schlafen) undR
(Betrieb).START
- Die Zeit zu Beginn des Vorgangs.ZEIT
- Die akkumulierte CPU -Zeit, die der Prozess verwendet hat.BEFEHL
- Der vollständige Befehl, mit dem der Laufprozess hervorgerufen wurde.
So verwenden Sie den PS -Befehl über Beispiele
Jetzt, wo Sie Ihre Lager mit dem haben ps
Befehl, gehen wir einige andere hilfreiche und gemeinsame Beispiele durch.
Die folgende UNIX -Syntax wird häufig anstelle der oben gezeigten BSD -Syntax verwendet. Es ist prägnanter und erleichtert es, Dinge auf einen Blick zu sehen, aber nicht so detailliert wie PS Aux
.
$ ps -f
-e
- Zeigen Sie laufende Prozesse von allen Benutzern an.-F
- Zeigen Sie die vollständige Formatliste an (Zeigt zusätzliche Informationen zum Ausführen von Prozessen an).
Unsere Spalten haben sich ein wenig verändert, aber sie bedeuten meistens dasselbe wie bei der BSD -Syntax. Hier ist ein kurzer Überblick über die neuen:
Uid
- Benutzer -ID, wieBENUTZER
In BSD -Syntax.Ppid
- Die Prozess -ID des übergeordneten Prozesses.C
- CPU -Nutzung, wie%ZENTRALPROZESSOR
In BSD -Syntax.Stime
- Startzeit, genau wieSTART
In BSD -Syntax.
Wenn Sie solche detaillierten Informationen nicht benötigen, verwenden Sie einfach die -e
Möglichkeit. Der Axt
Optionen werden dasselbe erfüllen.
$ ps -e pid tty time cmd 1 ? 00:00:02 Systemd 2 ? 00:00:00 Khreadd 3 ? 00:00:00 RCU_GP… $ PS AX PID TTY STAT Time Command 1 ? Ss 0:02 /sbin /init splash 2 ? S 0:00 [KThreadd] 3 ? ICH< 0:00 [rcu_gp]
Eine der besten Merkmale von ps
ist, dass Sie nach jeder gewünschten Spalte sortieren können. Zum Beispiel, um Prozesse nach der Menge an Speicher zu sortieren, die sie verwenden:
$ ps aux--sort =-%mem | wenigerSortieren der PS -Ausgabe nach Speicherverbrauch
Oder sortieren Sie nach CPU -Nutzung:
$ ps aux--sort =-%cpu | weniger
Wenn Sie nach einem bestimmten Prozess suchen, ist es am besten, nach Grep zu gelangen. Dies ist besonders nützlich, wenn Sie schnell feststellen müssen, ob ein Prozess ausgeführt wird oder nicht, oder die Prozess -ID benötigt.
$ PS Aux | Grep Apache2
Der Ö
Option in BSD und -Ö
Mit Unix können wir angeben, welche Spalten wir sehen möchten. Das macht das ps
Ausgabe sehr anpassbar und listet nur die Informationen auf, die wir für relevant finden. Alles, was Sie tun müssen, ist, jede gewünschte Spalte aufzulisten, die mit Kommas getrennt ist.
$ ps axo pid,%cpu,%mem, Befehl | weniger
Spalten in BSD -Syntax isolieren
Hier ist ein weiteres Beispiel, aber die Verwendung von UNIX -Syntax und die Sortierung der Ausgabe nach CPU -Nutzung.
$ ps -eo pid, ppid, c - -sort = -c | wenigerIsolieren von Spalten und Sortieren von Ergebnissen nach CPU -Verwendung in der UNIX -Syntax
Gedanken schließen
In diesem Leitfaden haben wir gesehen, wie man das benutzt ps
Befehl unter Linux, um laufende Prozesse auf dem System aufzulisten. Wir haben auch verschiedene Beispiele für Befehlszeilen gelernt, die es uns ermöglichen, die Informationen zu isolieren, die wir benötigen.
Der wichtigste Imbiss aus diesem Leitfaden ist die PS Aux
Befehl. Mit diesem Befehl können Sie immer jeden Prozess sehen, der auf Ihrem System ausgeführt wird, und alle relevanten Informationen identifizieren. Rohrleitungen zu Grep
macht den Befehl noch mächtiger. Für eine stärkere körnige Kontrolle können Sie jederzeit unseren Leitfaden oder die PS Manual -Seite konsultieren.
Verwandte Linux -Tutorials:
- Wie man ein Signal an Kinderprozesse aus einer Bash verbreitet…
- Dinge zu installieren auf Ubuntu 20.04
- Spezielle Bash -Variablen mit Beispielen
- Eine Einführung in Linux -Automatisierung, Tools und Techniken
- Linux -Befehle: Top 20 wichtigste Befehle, die Sie benötigen, um…
- Grundlegende Linux -Befehle
- Mastering -Bash -Skriptschleifen beherrschen
- Dinge zu tun nach der Installation Ubuntu 20.04 fokale Fossa Linux
- Multi-Thread-Bash-Skript- und Prozessmanagement bei der…
- Bash -Hintergrundprozessmanagement verleihen