Ich möchte die Prozess-ID eines bestimmten Prozesses extrahieren, um ihn herunterzufahren. Der Prozess ist ein lokaler Webserver, der einen bestimmten Port verwendet (localhost: 3000), und ich mache es derzeit so, um die relevante Zeile zu extrahieren:
lsof|grep localhost:3000
aber der lsof
Befehl ist zu langsam. Gibt es eine schnellere Möglichkeit, die Prozess-ID zu extrahieren?
lsof -i
Listen Sie nur die Netzwerkverbindungen auf.lsof
ist nicht der langsame Teil, bei dem alle Namensauflösungen und IP-Auflösungen verwendet werden. Machen Sie alles numerisch und es wird schnell gehen.t use
töten kannstpgrep
oderpkill
?Antworten:
Versuchen Sie netstat, ich kann jedoch nicht sagen, ob es schneller oder langsamer ist.
quelle
Sie können lsof mit der Option -n versehen und anschließend die DNS-Auflösung entfernen, wodurch die Anzeige beschleunigt werden kann
quelle
Dadurch wird die PID des Prozesses gedruckt, der auf 3000 lauscht
time
berichtet, dass dies in 0m0.018s abgeschlossen ist.quelle