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

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

Re: [shell-script] Grep retorna mais de um resultado


From: Flavio Junior
Subject: Re: [shell-script] Grep retorna mais de um resultado
Date: Fri, 12 Jan 2007 15:08:09 -0200

SIM, isso é ER...

Voce pode conhece-la (ao menos onde eu conheci) no livro do Aurelio Marinho
Jargas, que o doido disponibiliza online e gratuitamente em:
guia-er.sourceforge.net . O site dele é: www.aurelio.net

Boa leitura.

Flávio do Carmo Júnior
PS: ER é shell, material de leitura/estudo é escopo, assim acredito.

On 1/12/07, Deivid Vilela <address@hidden> wrote:
>
>   Mas rapaz
> era exatamente isso que faltava....
>
> desculpe a ignorância mas esse "pelinho" aí não aparece no man do grep,
> tem algum lugar ou referência que eu posso consultar sobre as opções de
> pesquisa iguais a esta? isso é ER?
>
> :wq
>
> Flávio Junior escreveu:
> >
> >
> > $ grep '^address@hidden 
> > <%27%5Ea.bandeira%40dominio.com><mailto:%27%5Ea.bandeira%40dominio.com>'
> > mysql.txt
> >
> > Testa isso.. no caso o ^ ta forçando a só retornar as linhas que tenham
> no
> > INICIO dela a string "address@hidden <a.bandeira%40dominio.com>
> > <mailto:a.bandeira% <a.bandeira%25>40dominio.com>"
> >
> > Talvez isso ajude.
> >
> > Flavio do Carmo Junior
> >
> > On 1/12/07, Deivid Vilela <address@hidden<deividvilela%40yahoo.com.br>
> > <mailto:deividvilela%40yahoo.com.br>> wrote:
> > >
> > > Meus cumprimentos a todos
> > >
> > > Gostaria de saber se o grupo pode contribuir com uma dificuldade
> minha.
> > >
> > > tenho um arquivo txt com uma listagem de e-mails para cálculo de % de
> > > uso de quota.
> > > A estrutura do arquivo é a seguinte
> > >
> > > User<tab>quota<tab>maildir
> > >
> > > teoricamente para localizar um usuário dentro deste arquivo bastaria
> um
> > > grep bem simples
> > >
> > > grep $User base.txt
> > >
> > > funciona muito bem até o grep encontrar um usuário com . na string aí
> > > ele se perde. para ilustrar a situação segue abaixo as várias opções
> que
> > > eu testei com o grep.
> > >
> > > [root@MAITB3213 txt]# grep a.bandeira@dominio mysql.txt
> > > a.bandeira@dominio 10240
> > > /usr/local/atmail/users/a/other/a.bandeira@dominio
> > > bandeira@dominio 10240 /usr/local/atmail/users/b/a/bandeira@dominio
> > >
> > > [root@MAITB3213 txt]# grep 'a.bandeira@dominio' mysql.txt
> > > a.bandeira@dominio 10240
> > > /usr/local/atmail/users/a/other/a.bandeira@dominio
> > > bandeira@dominio 10240 /usr/local/atmail/users/b/a/bandeira@dominio
> > >
> > > [root@MAITB3213 txt]# grep "a.bandeira@dominio" mysql.txt
> > > a.bandeira@dominio 10240
> > > /usr/local/atmail/users/a/other/a.bandeira@dominio
> > > bandeira@dominio 10240 /usr/local/atmail/users/b/a/bandeira@dominio
> > > [root@MAITB3213 txt]#
> > >
> > > SE eu fizer quoting no . usando uma barra ele traz apenas um
> resultado,
> > > a complicação disso é que a conta de e-mail está armazenada em uma
> > > variável e eu nunca sei quando existe o ponto ou não.
> > >
> > > Próximo passo? tentar awk resultado? idêntico
> > >
> > > Para análise segue também o trecho do script que faz este for.
> > >
> > > contas=`awk '$1 {print $1}' $mcountpath/mysql.txt`
> > > for conta in $contas
> > > do
> > > # Para cada conta extrai o limite de uso identificado no banco de
> dados
> > >
> > > quota=`grep $conta $mcountpath/mysql.txt |awk '{print $2}'`
> > > maildir=`grep $conta $mcountpath/mysql.txt |awk '{print $3}'`
> > > done
> > >
> > > Usando grep ou awk ou qualquer outra coisa tem como resolver isso?
> > >
> > > Obrigado pela atenção de todos
> > > Deivid Vilela
> > >
> > >
> > > _______________________________________________________
> > > Yahoo! Mail - Sempre a melhor opção para você!
> > > Experimente já e veja as novidades.
> > > http://br.yahoo.com/mailbeta/tudonovo/
> > <http://br.yahoo.com/mailbeta/tudonovo/>
> > >
> > >
> > >
> > >
> >
> > [As partes desta mensagem que não continham texto foram removidas]
> >
> >
>
>
> _______________________________________________________
> Yahoo! Mail - Sempre a melhor opção para você!
> Experimente já e veja as novidades.
> http://br.yahoo.com/mailbeta/tudonovo/
>
>
>  
>


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



reply via email to

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