pidof
Dieser Artikel wurde für die folgenden Ubuntu-Versionen getestet:
Dieser Artikel ist größtenteils für alle Ubuntu-Versionen gültig.
Zum Verständnis dieses Artikels sind folgende Seiten hilfreich:
pidof liefert die Prozessidentifikationsnummer/n (PIDs) zu gegebenen Prozessnamen oder -pfaden. Es wird z.B. in Kombination mit Shell-Skripten verwendet.
Installation¶
Das Programm ist im Paket
sysvinit-utils
enthalten, das bei jeder Ubuntuinstallation automatisch vorinstalliert ist.
Benutzung¶
Die allgemeine Syntax lautet [1]:
pidof [OPTIONEN] Prozessname [Prozessname2 ...]
Prozessnamen sind dabei die Namen der gesuchten Programme, z.B. "gedit", "nano", "firefox"...
pidof akzeptiert folgende Optionen:
Optionen von pidof | |
Option | Beschreibung |
-s | "Single shot" - Teilt pidof mit, nur eine Prozess-ID auszugeben |
-o | "omitpid" - mit -o angegebene Prozess-IDs werden bei der Ausgabe übersprungen |
Beispiele¶
pidof nano | Gibt die Prozess-IDs aller laufenden Prozesse von nano aus. |
pidof -s nano | Gibt die Prozess-ID aus, die im vorherigen Beispiel an erster Stelle stand. |
pidof nano firefox | Gibt die Prozess-IDs aller laufenden Prozesse von nano und firefox aus. |
pidof -o 6741 nano | Gibt die Prozess-IDs aller laufenden Prozesse von nano, bis auf 6741, aus. |
Hinweis:
Wie man sieht, gibt pidof die Prozess-IDs aller laufenden Prozesse des angegebenen Namens. Dies kann unter Umständen Verwirrung stiften, falls jemand einem anderen Programm den gleichen Namen gegeben hat. Um sicherzustellen, dass man den korrekten Prozess findet, kann man statt eines Namens auch den ganzen Pfad des Programms angeben, z.B.
pidof /bin/nano
pidof in Skripten¶
pidof lässt sich sehr gut in Skripten einsetzen oder mit anderen Befehlen kombinieren:
sudo renice -10 $(pidof nano)
aber wird auch oft überflüssigerweise eingesetzt, wo eigene Programme existieren:
kill $(pidof nano)
wird besser mit
pkill nano
realisiert.
Fortgeschrittene Tipps¶
Mit pidof lässt sich auch gut überprüfen, ob ein Programm noch läuft:
while pidof <ProgrammName>; do # ... done
Links¶
Shell/Befehlsübersicht Übersicht über verschiedene Shell-Befehle
pgrep Suche nach Prozessen