Como posso encontrar o processo com o maior número de soquetes TCP em execução no momento com o bash?
Eu gostaria de gerar apenas o nome do processo
Responder1
Se você estiver interessado apenas em soquetes TCP, então lsof +c 0 -i tcp é uma resposta, caso contrário, você precisará estender as opções para lsof incluir outros tipos de soquetes
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/^.*\///'
Andrei
Responder2
# 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