$ ps aux | grep -i ssh
USER 4364 0.0 0.0 9004 1032 ? Ss 12:20 0:00 ssh -v -fND localhost:4000 USERNAME@SERVER-IP-ADDRESS
$ pgrep localhost:4000
Warum funktioniert das nicht?
Standardmäßig pgrep(1)
wird nur mit dem Prozessnamen abgeglichen. Wenn Sie mit der vollständigen Befehlszeile übereinstimmen möchten, verwenden Sie die folgende -f
Option:
$ pgrep -f localhost:4000
Schauen Sie sich die Manpage für pgrep an . Es ist nicht nur ein Alias, um ps mit einer Reihe von Spalten auszuführen und dann die Textausgabe zu erfassen. Es durchsucht tatsächlich bestimmte Felder nach Werten. Standardmäßig wird bei einer Suche nur der Prozessname angezeigt und die PID zurückgegeben . Sie können die vollständige Befehlszeile durchsuchen, indem Sie die -f
Option hinzufügen . Sie können auch mehrere andere Felder durchsuchen, die nützlich sein können, z. B. das Terminal, auf dem ein Prozess ausgeführt wird, oder die Gruppen-ID.