Come terminare un processo per porta su MacOS, come il fuser -k 9000 / tcp


14

Su Linux posso uccidere un processo conoscendo solo la porta che sta ascoltando usando fuser -k 9000/tcp, come faccio lo stesso su MacOS?

Risposte:


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

Passare PortNumberalla porta effettiva che si desidera cercare.


2
Ho dovuto solo aggiungere -9alla fine per farlo funzionare, ma credo che ciò sia dovuto alla natura dell'applicazione di ascolto e alla pratica generalmente non raccomandata kill -9.
Kris,

@Kris - lsof -P | grep ': NumberOfPort' | awk '{print $ 2}' | xargs kill -9 ha funzionato!
assi.

11

L'aggiunta dei flag -t e -i a lsof dovrebbe accelerare ancora di più eliminando la necessità di grep e awk.

lsof -nti:NumberOfPort | xargs kill -9

2
Funziona ed è più conciso della risposta accettata!
Big Rich

1
MODO più veloce con questo approccio
daleyjem il

2

Aggiungi -n a lsof e rimuovi la ricerca DNS inversa dal comando e riduci il tempo di esecuzione da minuti a secondi.

lsof -Pn | grep ':NumberOfPort' | awk '{print $2}' | xargs kill -9

1
  1. Controlla che la tua porta sia aperta o meno

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. Chiudere la porta interrompendo il processo PID

sudo kill -9 582

1

Puoi vedere se una porta è aperta da questo comando

 sudo lsof -i :8000

dove 8000 è il numero di porta

Se la porta è aperta, dovrebbe restituire una stringa contenente l'ID processo (PID).

Copia questo PID e

kill -9 PID

Se è necessario visualizzare tutte le porte aperte, è possibile eseguire una scansione delle porte nell'applicazione Utilità di rete.


0

È possibile utilizzare kill -9 $(lsof -i:PORT -t) 2> /dev/null, dove PORT è il numero di porta effettivo. Ucciderà il processo in esecuzione sulla tua porta.


Stai ripetendo un'altra risposta
yass
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.