port - uso - Buscar PID del proceso que usa un puerto en Windows
puerto 5037 está en uso (6)
Después de tocar un poco el guión, llegué a esta acción. Copie y guárdelo en un archivo .bat:
FOR /F "usebackq tokens=5" %%i IN (`netstat -aon ^| find "3306"`) DO taskkill /F /PID %%i
cambie ''buscar'' 3306 '''' en el número de puerto que debe ser libre. A continuación, ejecute el archivo como administrador. Matará a todos los procesos que se ejecutan en este puerto
Mi servicio se bloquea al inicio con el clásico:
java.rmi.server.ExportException: Listen failed on port: 9999
¿Cómo puedo encontrar el proceso para matarlo?
Esto ayuda a encontrar el PID usando el número de puerto.
lsof -i tcp:port_number
Si desea hacer esto mediante programación, puede usar algunas de las opciones que se le asignan de la siguiente manera en un script de PowerShell:
$processPID = $($(netstat -aon | findstr "9999")[0] -split ''/s+'')[-1]
taskkill /f /pid $processPID
Sin embargo; tenga en cuenta que cuanto más preciso pueda ser, más preciso será el resultado de su PID. Si sabe en qué host se supone que debe estar el puerto, puede limitarlo mucho. netstat -aon | findstr "0.0.0.0:9999"
netstat -aon | findstr "0.0.0.0:9999"
solo devolverá una aplicación y probablemente la más correcta. Solo buscar en el número de puerto puede hacer que regrese procesos que solo tienen 9999
, como este:
TCP 0.0.0.0:9999 0.0.0.0:0 LISTENING 15776
UDP [fe80::81ad:9999:d955:c4ca%2]:1900 *:* 12331
El candidato más probable generalmente termina primero, pero si el proceso ha finalizado antes de ejecutar el script, puede terminar con el PID 12331 y matar el proceso incorrecto.
Simplemente abra un shell de comando y escriba: (diciendo que su puerto es 123456)
netstat -a -n -o | find "123456"
Verás todo lo que necesitas
Los encabezados son:
Proto Local Address Foreign Address State PID
TCP 0.0.0.0:37 0.0.0.0:0 LISTENING 1111
Buscar PID del proceso que utiliza un puerto en Windows (por ejemplo, puerto: "9999")
netstat -aon | find "9999"
-a
Muestra todas las conexiones y puertos de escucha.
-o
Muestra el ID del proceso propietario asociado con cada conexión.
-n
Muestra direcciones y números de puertos en forma numérica.
salida:
TCP 0.0.0.0:9999 0.0.0.0:0 LISTENING 15776
A continuación, taskkill /F /PID 15776
el proceso mediante PID taskkill /F /PID 15776
/F
: especifica terminar de forma forzada el / los proceso / s.
Nota: Es posible que necesite un permiso adicional (ejecutado por el administrador) para matar algunos procesos determinados
comando: netstat -aon | findstr 4723
salida: TCP 0.0.0.0:4723 0.0.0.0:03 ESCUCHAR 10396
ahora corte el id. de proceso "10396" usando para comando en windows.
comando: para / f "tokens = 5"% a in (''netstat -aon ^ | findstr 4723'') do @echo% ~ nxa
salida: 10396
si quiere reducir el 4to. valor, significa "ESCUCHAR" y luego ordene en Windows.
comando: para / f "tokens = 4"% a in (''netstat -aon ^ | findstr 4723'') do @echo% ~ nxa
salida: ESCUCHAR
¡Espero que mi respuesta te ayude!