So beenden Sie einen Prozess nach Port unter MacOS: a la fuser -k 9000 / tcp

14

Unter Linux kann ich einen Prozess beenden fuser -k 9000/tcp, wenn ich weiß, welchen Port er gerade benutzt . Wie gehe ich unter MacOS genauso vor?

Kris
quelle

Antworten:

19
lsof -P | grep ':PortNumber' | awk '{print $2}' | xargs kill -9

Wechseln Sie PortNumberzu dem tatsächlichen Port, nach dem Sie suchen möchten.

stefano
quelle
2
Ich musste nur -9das Ende ergänzen , um dies zum Laufen zu bringen, aber ich glaube, das liegt an der Natur der Höranwendung und nicht an der allgemein empfohlenen Praxis kill -9.
Kris
@Kris - lsof -P | grep ': NumberOfPort' | awk '{print $ 2}' | xargs kill -9 hat funktioniert!
Asse.
10

Das Hinzufügen der Flags -t und -i zu lsof sollte den Vorgang noch beschleunigen, da grep und awk nicht mehr erforderlich sind.

lsof -nti:NumberOfPort | xargs kill -9
Zlemini
quelle
2
Funktioniert und ist prägnanter als die akzeptierte Antwort!
Big Rich
1
WEG schneller mit diesem Ansatz
Daleyjem
2

Fügen Sie -n zu lsof hinzu, und entfernen Sie die umgekehrte DNS-Suche aus dem Befehl, und verringern Sie die Laufzeit von Minuten auf Sekunden.

lsof -Pn | grep ':NumberOfPort' | awk '{print $2}' | xargs kill -9
stevehollx
quelle
1
  1. Überprüfen Sie, ob Ihr Port offen ist oder nicht

sudo lsof -i: {PORT_NUMBER}

COMMAND PID     USER   FD   TYPE             DEVICE SIZE/OFF NODE NAME
java    582 Thirumal  300u  IPv6 0xf91b63da8f10f8b7      0t0  TCP *:distinct (LISTEN)

2. Schließen Sie den Port, indem Sie die Prozess-PID beenden

sudo kill -9 582
Thirumal
quelle
0

Sie können verwenden kill -9 $(lsof -i:PORT -t) 2> /dev/null, wobei PORT Ihre tatsächliche Portnummer ist. Dadurch wird der Prozess abgebrochen, der auf dem angegebenen Port ausgeführt wird.

Epk
quelle
Sie wiederholen eine andere Antwort
Ja,
0

Mit diesem Befehl können Sie feststellen, ob ein Port geöffnet ist

 sudo lsof -i :8000

Dabei ist 8000 die Portnummer

Wenn der Port geöffnet ist, sollte er eine Zeichenfolge zurückgeben, die die Prozess-ID (PID) enthält.

Kopieren Sie diese PID und

kill -9 PID

Wenn Sie alle offenen Ports sehen möchten, können Sie in der Network Utility-Anwendung einen Port-Scan durchführen.

rohanharikr
quelle