A menudo hago, por ejemplo
sudo netstat -lpn |grep :8088
ver la salida
tcp6 0 0 :::8088 :::* LISTEN 11189/java
y entonces
sudo kill -kill 11189
Me gustaría tener un comando más conveniente exactamente como killatport 8088
ese que usa el número de puerto tcp como variable y que puedo hacer como un alias para una tubería que hace lo que quiero, pero ¿cómo obtengo el PID de la salida y la tubería? a la orden de matar? Supongo que podría usar awk para obtener el PID de la salida de netstat, pero ¿cómo protejo y hago una coincidencia de puerto exacta para que la entrada 80 no coincida con 8080 y lo mismo? ¿Debería convertirlo en un programa C? ¿O ya hay una pequeña utilidad como esta?
mvn jetty:stop
podría fallar si la instancia tiene OutOfMemoryError
. Cuando reinicio los servlets de Java, sucede que el puerto no está disponible incluso en una parada regular como mvn jetty:stop
. A veces, el proceso puede obtener OutOfMemoryError
y no liberará el puerto TCP en un apagado regular como mvn jetty:stop
.
mvn jetty:stop
no es lo mismo que enviar SIGTERM, y la jvm aún debería poder procesar SIGTERM a pesar de que sus aplicaciones estén fuera de memoria.