shell-script-pt
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [shell-script] Como contar linhas não repetidas num arquivo de log?


From: Flavio Junior
Subject: Re: [shell-script] Como contar linhas não repetidas num arquivo de log?
Date: Sat, 8 Mar 2008 15:01:34 -0300

Hmm...

$ awk '{print $NF}' | sort -u | wc -l

tambem deve funcionar..

Nao da pra testar agora,


Flavio do Carmo Junior
#bash-br @ irc.freenode.net - Canal de IRC sobre bash script.... participem
;)


2008/3/8 Alain M. <address@hidden>:

>   Oi Adriano,
>
> Eu não vou te dar o código, mas gostaria de explicar uma coisa:
>
> O grande segredo em shell script, é fazer as coisas por partes:
>
> 1) Elimine o que não interessa: use o cut
> 2) Elimine os repetidos: use o sort com opção unique
> 3) Agora é só contar o que sobrou: use o wc
>
> Vai fazendo um comando provez, no final cabe tudo em uma linha:
>
> cat lista.txt | cut -d ' ' -f 5 | sort --unique | wc -l
>
> OBS: não ficou muito elegante o comando cut, o motivo é que tem 2
> espaços seguidos. Talvez alguém possa dar uma dica de como usar
> multiplos espaços como delimitador...
>
> Alain
>
> bossonaroesao06 escreveu:
>
> > Bom dia...
> >
> > Tenho um arquivo de log no seguinte formato:
> >
> > 1ªcoluna: DATA/HORA (nesse formato maluco aí)
> > 2ªcoluna: IP
> > 3ªcoluna: USER
> >
> > Exemplo:
> > #======================================#
> > 1204883891.466 192.168.10.76 andre
> > 1204883891.467 192.168.10.71 andre
> > 1204883891.468 192.168.10.26 marcos
> > 1204883891.469 192.168.10.11 renato
> > 1204883891.469 192.168.10.76 andre
> > 1204883891.470 192.168.10.71 andre
> > 1204884017.599 192.168.10.26 adriano
> > 1204884233.373 192.168.10.11 renato
> > #======================================#
> >
> > Eu gostaria de saber o número de usuários nesse log sem repetir.
> >
> > No exemplo acima tenho os usuários na terceira coluna mas eu não
> > posso simplesmente contar as linhas pois eles se repetem.
> >
> > Eu gostaria de fazer um script para contar esses usuários no arquivo
> > de log de forma que a resposta para o exemplo acima fosse 04 (
> > andre, marcos, renato, adriano) sem repetir as ocorrências de cada
> > um deles.
> >
> > Alguem poderia me ajudar?
> > Obrigado pela atenção
> > Adriano
> >
> >
> >
> > ----------------------------------------------------------
> > 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: address@hidden<shell-script-unsubscribe%40yahoogrupos.com.br>
> > ----------------------------------------------------------
> > 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
> >
> >
> >
> >
>  
>


[As partes desta mensagem que não continham texto foram removidas]



reply via email to

[Prev in Thread] Current Thread [Next in Thread]