Process Grep, allgemein bekannt als pgrep, ist eine weitere beliebte Methode, um Prozess-IDs in der Shell zu finden. Wenn wir den Prozessnamen kennen, können wir ihn mit dem Befehl pgrep angeben. Der Befehl pgrep zeigt die PID von Prozessen an, die mit einem bestimmten Muster übereinstimmen, ähnlich wie grep verwendet wird, um Muster in einer Textdatei abzugleichen. Zu den Mustern können gehören:der Name oder die Benutzer-ID (UID) des Benutzers, der sie aufgerufen hat; die Startzeit; die Eltern-PID; und mehr.
Sie können pgrep verwenden, um einen Prozess basierend auf mehreren Faktoren zu identifizieren, wenn Sie seine genaue PID nicht kennen. Die Identifizierung der PID ist normalerweise der erste Schritt bei der Verwaltung des Prozesses.
Syntax
Die Syntax des pgrep-Befehls lautet:
# pgrep [options] {pattern}
Wenn beim Ausführen des pgrep-Befehls der folgende Fehler auftritt:
pgrep: command not found
Sie können versuchen, das folgende Paket gemäß Ihrer Wahl der Distribution zu installieren:
Betriebssystemverteilung | Befehl |
---|---|
Debian | apt-get install procps |
Ubuntu | apt-get install procps |
Alpin | apk fügt procps hinzu |
Arch Linux | pacman -S procps-ng |
Kali-Linux | apt-get install procps |
CentOS | yum installiere procps-ng |
Fedora | dnf install procps-ng |
Raspbian | apt-get install procps |
pgrep-Befehlsbeispiele
1. Geben Sie PIDs aller laufenden Prozesse mit einer übereinstimmenden Befehlszeichenfolge zurück:
# pgrep process_name
2. Suchen Sie nach Prozessen einschließlich ihrer Befehlszeilenoptionen:
# pgrep --full "process_name parameter"
3. Suchen Sie nach Prozessen, die von einem bestimmten Benutzer ausgeführt werden:
# pgrep --euid root process_name
4. Um Prozesse mit dem ebenfalls root gehörenden sshd-Befehlsnamen aufzulisten, führen Sie die Befehlszeile wie folgt aus:
# pgrep -u root sshd
5. Um Prozesse aufzulisten, die dem Benutzer root oder daemon gehören, führen Sie die Befehlszeile wie folgt aus:
# pgrep -u root,daemon
6. Der Befehl pgrep kann verwendet werden, um Prozesse aufzulisten, indem ein Muster angegeben wird, das den Prozessnamen enthält. Die folgende Befehlszeile findet die PID des Prozesses mit dem Namen Firefox:
# pgrep firefox
7. Das folgende Beispiel zeigt die Verwendung des pgrep-Befehls, um alle Prozesse des Benutzers student aufzulisten:
# pgrep -U student
8. Die Option -d gibt ein anderes Ausgabetrennzeichen als den standardmäßigen Zeilenumbruch an:
# pgrep COMMAND -d DELIMITER_STRING # pgrep bash -d ":" 1255:1680
9. Die Option -c gibt die Anzahl der übereinstimmenden Prozesse zurück:
# pgrep -c COMMAND