Script de Linux para matar el process de escucha en un puerto en particular

Tengo un process que escucha en un puerto del TCP (? 0003). De vez en cuando se bloquea – mal. Deja de funcionar, pero sigue acaparando el puerto durante algún time, así que ni siquiera puedo reiniciarlo. Estoy buscando para automatizar esto.

Lo que hago ahora es:

netstat -ntlp |grep -P "\*\:\d0003" 

Para ver lo que es el PID y luego:

 kill -9 <pid> 

¿Alguien tiene un script (o EXE para el caso) que enlazaría los dos pasos juntos, es decir. analizar el PID desde el primer command y pasarlo al segundo?

6 Solutions collect form web for “Script de Linux para matar el process de escucha en un puerto en particular”

También puedes hacerlo de esa manera:

 kill -9 $( lsof -i:?0003 -t ) 
 kill $(netstat -ntpl 2>/dev/null | egrep "^tcp .*:[0-9]0003"|awk '{print $7}'|cut -d / -f 1 ) 

Usted puede kill -9 lugar de pensar que el -9 es necesario. Redirecciono el netstat stderr porque omite un post cuando se ejecuta como no-raíz que no es importante para este propósito. Incluyo tcp en el regex para filtrar tcp6.

hay una línea para ti

 netstat -ntlp | awk '$4~/:*0003$/{gsub(/\/.*/,"",$NF);cmd="kill -9 "$NF;system(cmd)}' 

Supongo que el command python es sólo el primer término en el command completo, ¿verdad? Si tienes el nombre del script que se está ejecutando puedes mirar algo como pgrep -f

Si está seguro de la singularidad, también puede usar el pkill -f relacionado pkill -f

¿Qué pasa con killall <command> hay más de uno de estos processs?

Si eso no funciona pruebe:

 PID=`netstat -ntlp |grep -P "\*\:\d0003"`; kill -9 $PID 

Eso debería hacer el truco.

Tal vez el command del fusor con las opciones -k y -n puede ayudar. Diga "man fuser" para más información.

  • mover files de un dispositivo a otro
  • nl command + número de cada línea en un file de text sólo desde la tercera línea
  • impedir que el process termine al cerrar el termial
  • Falsificación de la date para una session de shell específica
  • bash si statement comportamiento inesperado en el trabajo crontab
  • Formato de nombre de file de script de Shell
  • ¿Cómo puedo saber qué versión de Fedora estoy ejecutando desde el cli (no uname -a)?
  • ¿Puedo ejecutar un command integrado de shell con Puppet?
  • Shell para encontrar los files creados más recientes recursivamente desde un directory raíz?
  • ¿Una manera fácil de almacenar y acceder a los commands más utilizados?
  • Forzar a SSH a usar un shell específico
  • El linux y los temas del servidor de Windows, como ubuntu, centos, apache, nginx, debian y consejos de red.