
Estoy buscando la forma más limpia en Linux de encontrar el estado de un puerto utilizado por un nombre de programa específico a través de la línea de comando. He visto que netstat -p enumera todos los pids pero no he visto nada correspondiente a nombres de procesos específicos. Cualquier ayuda sería apreciada.
Respuesta1
Teóricamente deberías ver el nombre del programa con el parámetro -p y el PID. Tenga en cuenta que necesita derechos de root para mostrar el nombre del programa de los procesos que no se están ejecutando con su usuario.
-p sin permisos de root:
$ netstat -lnp
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN -
tcp 0 0 0.0.0.0:21 0.0.0.0:* LISTEN -
...
...
-p con permisos de root
$ sudo netstat -lnp
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 1553/apache2
tcp 0 0 0.0.0.0:21 0.0.0.0:* LISTEN 1392/vsftpd
...
...