¿Cómo puedo encontrar el proceso con la mayor cantidad de sockets TCP que se está ejecutando actualmente con bash?
Me gustaría mostrar solo el nombre del proceso.
Respuesta1
Si solo está interesado en los sockets TCP, entonces lsof +c 0 -i tcp es una respuesta; de lo contrario, necesita ampliar las opciones para que lsof incluya otros tipos de sockets.
ps -ef | pgrep -lf `lsof +c 0 -i tcp | awk '{print $1}' | sort | uniq -c | sort -n | tail -1 | awk '{print $2}'` | cut -d' ' -f2 | uniq | sed -e 's/^.*\///'
andrés
Respuesta2
# ps -p $(netstat -tnp|awk '$6=="ESTABLISHED" {split($7,a,"/"); print a[1]}' | sort | uniq -c | sort -r | head -n 1 | awk '{print $2}') -o comm=
skype