A solução que consegui e funcionou 100% foi a seguinte:

l...@lbw-laptop:~$ cat teste
#!/bin/bash
echo -n "01
01
01
01
05
05
11
11
11
"|uniq -c |sed 's/^ *//;s/ / - /'

l...@lbw-laptop:~$ ./teste
4 - 01
2 - 05
3 - 11

O uniq -c conta as ocorrências mas não coloca no formato que você 
precisa, então utilizando o sed nós substituímos os espaços em branco no 
inicio da linha por nada.
A expressão regular ^ * representa o inicio da linha seguido de 
indeterminados espaços em branco, ou seja, até encontrar algo diferente 
de um espaço, depois a segunda expressão substitui o espaço em branco 
entre o índice e o número real por " - " espaço - espaço.
Feito.

Primeira participação na lista, espero que ajude.
Abraços

shelleiro escreveu:
>
> Desculpe, mas não alterei o assunto quando respondi e ficou o assunto 
> como :
>
> Re: Resumo 3701
>
> Dá uma olhada nele OK !!!
>
> Cordialmente,
>
> Marcelo G. Dias
> Vulgo : Bahianeiro
>
> --- Em shell-script@yahoogrupos.com.br 
> <mailto:shell-script%40yahoogrupos.com.br>, Alain Mouette <ala...@...> 
> escreveu
> >
> > Estou criando um script para analizar um arquivo de log de erros...
> > empaquei no final então venho aqui pedir ajuda aos universitários :)
> >
> > Depois de limpara a parte inútil, consegui uma lista de códigos de 2
> > dígitos assim:
> > 01
> > 01
> > 01
> > 01
> > 05
> > 05
> > 11
> > 11
> > 11
> >
> > E gostaria de algo assim:
> > 01 - 4
> > 05 - 2
> > 11 - 3
> >
> > Ou seja quero saber quantas vezes cada código apareceu no arquivo.
> >
> > Alguma ideia?
> > Grato,
> > Alain
> >
>
> 




------------------------------------

---------------------------------------------------------------------
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: shell-script-unsubscr...@yahoogrupos.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

<*> Para visitar o site do seu grupo na web, acesse:
    http://br.groups.yahoo.com/group/shell-script/

<*> Para sair deste grupo, envie um e-mail para:
    shell-script-unsubscr...@yahoogrupos.com.br

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
    http://br.yahoo.com/info/utos.html


Responder a