Übersicht
`pgrep` filtert Prozesse nach verschiedenen Kriterien wie Prozessname, Benutzer-ID, Terminal und übergeordnete Prozess-ID (PPID) und gibt die entsprechenden PIDs zurück. Dies ist nützlich, um bestimmte Prozesse in Skripten zu finden, zu steuern oder ihren Status zu überprüfen.
Hauptfunktionen
- Unterstützung für die Suche basierend auf regulären Ausdrücken
- Filterung von Prozessen nach Benutzer/Gruppe
- Suche nach der vollständigen Befehlszeile möglich
- Optionen zur Auswahl des ältesten oder neuesten Prozesses
Wichtige Optionen
Suchkriterien
Ausgabeformat und Sortierung
Erzeugter Befehl:
Kombinieren Sie die Befehle.
Beschreibung:
`pgrep` Führen Sie den Befehl aus.
Kombinieren Sie diese Optionen und führen Sie die Befehle virtuell zusammen mit der KI aus.
Anwendungsbeispiele
PID eines bestimmten Prozesses finden
pgrep sshd
Findet die Prozess-ID für den Prozess namens `sshd`.
PID von Prozessen eines Benutzers finden
pgrep -u root
Findet die IDs aller Prozesse, die vom Benutzer `root` ausgeführt werden.
PID und Name zusammen ausgeben
pgrep -l firefox
Gibt die ID und den Namen des `firefox`-Prozesses zusammen aus.
Suche nach vollständiger Befehlszeile
pgrep -f "apache2.*worker"
Findet die IDs von Prozessen, deren vollständige Befehlszeile sowohl `apache2` als auch `worker` enthält.
Suche nach exakter Übereinstimmung
pgrep -x ssh
Findet die Prozess-ID für den Prozess mit dem exakten Namen `ssh`. (`sshd` wird ausgeschlossen)
Neuesten Prozess finden
pgrep -n chrome
Findet die PID des zuletzt gestarteten `chrome`-Prozesses.
Tipps & Hinweise
`pgrep` ist mächtig, aber bei falscher Anwendung können unbeabsichtigt Prozesse beendet oder beeinflusst werden. Seien Sie daher vorsichtig.
Kombination mit pkill
Anstatt die von `pgrep` gefundenen PIDs manuell an den `kill`-Befehl zu übergeben, ist es praktisch, den `pkill`-Befehl zu verwenden. Dieser kann Prozesse direkt mit denselben Suchkriterien wie `pgrep` beenden oder Signale senden. Zum Beispiel beendet `pkill -f "nginx.*worker"` direkt die `nginx`-Worker-Prozesse.
Verwendung regulärer Ausdrücke
`pgrep` unterstützt standardmäßig reguläre Ausdrücke. Dies ermöglicht komplexe Musterabgleiche.
- `pgrep 'httpd|nginx'` findet Prozesse mit den Namen `httpd` oder `nginx`.
- Mit der Option `-f` können Sie die Ausführung bestimmter Skripte genau identifizieren, z. B. `pgrep -f '^/usr/bin/python3.*script.py$'`.
Option -x für exakte Übereinstimmung
`pgrep` führt standardmäßig Teilübereinstimmungen durch. Zum Beispiel findet `pgrep ssh` nicht nur `ssh`, sondern auch `sshd`. Um nur Prozesse mit dem exakten Namen `ssh` zu finden, verwenden Sie die Option `-x`. Dies ist wichtig, um unbeabsichtigte Beeinflussung von Prozessen zu vermeiden.