Fala, Jorge. Não cheguei a testar seu script, mas o netstat tem algumas opções bem flexíveis:
# netstat -ntlp --inet Active Internet connections (only servers) Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name tcp 0 0 0.0.0.0:2049 0.0.0.0:* LISTEN - tcp 0 0 0.0.0.0:55460 0.0.0.0:* LISTEN 4090/rpc.mountd tcp 0 0 0.0.0.0:36134 0.0.0.0:* LISTEN 3486/rpc.statd tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN 3466/portmap tcp 0 0 127.0.0.1:1234 0.0.0.0:* LISTEN 18345/sshd: mms tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 3759/sshd tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN 4560/cupsd tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 4164/master tcp 0 0 0.0.0.0:48829 0.0.0.0:* LISTEN - Com uma linha ou duas você consegue filtrar o resultado acima um pouco melhor e faz menos vai-e-vem com arquivos. E já pegando o gancho, recentemente vi um post no commandlinefu muito bacana: http://www.commandlinefu.com/commands/view/4545/show-the-command-line-of-a-process-that-use-a-specific-port-ubuntu []'s Eri Ramos Bastos 2010/1/13 Jorge Barros de Abreu <[email protected]>: > Olá. > > O script abaixo exibe as portas abertas e o processo que a está escutando. Foi > testado em um slackware. Espero que seja útil. > > FILE=`mktemp` > echo -e "Local Remoto Estado PID/Programa" > $FILE > sudo netstat -nap | grep -E 'LISTEN|ESTABLISHED' | grep -v LISTENING \ > | tr -s " " | cut -d' ' -f4,5,6,7 >> $FILE > echo "Script de Portas Abertas" > $FILE.1 > echo >> $FILE.1 > cat $FILE | column -tx >> $FILE.1 > echo >> $FILE.1 > echo -e "Porta\tPID/Nome do Programa" >> $FILE.1 > sudo netstat -nap | grep -E 'LISTEN|ESTABLISHED' | grep -v LISTENING \ > | tr -s " " | cut -d' ' -f4,7 | cut -d':' -f2 | tr ' ' '\t' >> $FILE.1 > mcedit $FILE.1 > rm $FILE $FILE.1 > unset FILE > > -- > Data Estelar 2455207,783287 > http://sites.google.com/site/ficmatinf > Desejo-lhe Paz, Vida Longa e Prosperidade. > São Bem Vindas Mensagens no Formato texto UTF-8 com Acentos. > > > ------------------------------------ > > --------------------------------------------------------------------- > Esta lista não admite a abordagem de outras liguagens de programação, como > perl, C etc. Quem insistir em não seguir esta regra será moderado sem prévio > aviso. > --------------------------------------------------------------------- > Sair da lista: [email protected] > --------------------------------------------------------------------- > Esta lista é moderada de acordo com o previsto em > http://www.listas-discussao.cjb.net > --------------------------------------------------------------------- > Servidor Newsgroup da lista: news.gmane.org > Grupo: gmane.org.user-groups.programming.shell.brazil > > Links do Yahoo! Grupos > > >
