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

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

Re: [shell-script] Re: grep lista de arquivos


From: Tiago Barcellos Peczenyj
Subject: Re: [shell-script] Re: grep lista de arquivos
Date: Mon, 24 Sep 2007 13:58:23 -0300

Ola Rafael.

Sim, é possivel fazer, mas tem um custo.

quando vc faz

grep "palavra" arquivo1 arquivo2 ... arquivoN

o grep recebe um array de parâmetros, com todos os arquivos. Ele então
realiza a busca pela palavra em cada um dos arquivos pois assim foi
concebido o seu funcionamento. A iteração interna é muito rapida.

quando vc faz um for em cada arquivo vc esta fazendo

grep "palavra" arquivo1
grep "palavra" arquivo2
...
grep "palavra" arquivoN

ou seja, vc esta chamando o programa grep N vezes. Em termos de
performance, essa forma é muito demorada. Para poucos arquivos, de
pequeno tamanho, pode ser até imperceptível a demora mas não deixa de
ser uma oportunidade para a lei de murphy ;-)

[]´s Tiago

On 9/24/07, Rafael A. Gazzoni <address@hidden> wrote:
>
> Boa Tarde pessoal..
>
>  Obrigado a todos pelas dicas aeh..
>
>  da para fazer assim também neh??:
>
>  for i in `cat lista_arquivos.txt`; do grep tux "$i"
>  lista_arquivos.txt; done
>
>  rsrsrs; apesar de ficar um comando bem grande! :(
>
>  RAFAEL.
>
>  --- Em address@hidden, "Julio C. Neves" <08years@...>
>  escreveu
>  >
>  > bonita solução. Subverteu o uso do xargs...
>  >
>  > Em 24/09/07, Tiago Barcellos Peczenyj <tiago.peczenyj@...> escreveu:
>  > >
>  > >   Humm...
>  > >
>  > > Eu sempre usei o xargs do outro lado de um pipe. Agora pensando
>  bem... da
>  > > para usar o redirecionamento e evitar um cat
>  > >
>  > > xargs grep tux < lista_arquivos.txt
>  > >
>  > > se bem que colocar o cat no começo da linha reforça a lógica do
>  problema.
>  > >
>  > > Bom é apenas uma curiosidade ;-)
>  > >
>  > > On 9/24/07, André Saunite <saunite@... <saunite%40gmail.com>> wrote:
>  > > >
>  > > > $ cat lista_arquivos.txt | xargs grep tux
>  > > > cama.txt:tux
>  > > > carro.txt:tux
>  > > > casa.txt:tux
>  > > >
>  > > > On 9/24/07, Rafael A. Gazzoni
>  <rafaelgazzoni@...<rafaelgazzoni%40yahoo.com.br>
>
>  > > <rafaelgazzoni%40yahoo.com.br>>
>  > > > wrote:
>  > > > >
>  > > > > Bom dia pessoal...
>  > > > >
>  > > > > to tentando automatizar uma tarefa aqui no trampo..mas a
>  script não ta
>  > > > > rolando..
>  > > > >
>  > > > > Tenho uma lista de arquivos (lista_arquivos.txt) e preciso da um
>  > > > > "grep tux" em cada um desses arquivos que consta no
>  > > (lista_arquivos.txt)
>  > > > >
>  > > > > lista_arquivos.txt
>  > > > > arq_1.txt
>  > > > > casa.txt
>  > > > > carro.txt
>  > > > > cama.txt
>  > > > > [..]
>  > > > >
>  > > > > Preciso da um grep em cada arquivo desses da lista...
>  > > > > Por exemplo: nesse caso.
>  > > > >
>  > > > > grep tux arq_1.txt
>  > > > > grep tux casa.txt
>  > > > > grep tux carro.txt
>  > > > > grep tux cama.txt
>  > > > > [..]
>  > > > >
>  > > > > tentei fazer um negocio tipo assim, mas não deu certo!
>  > > > >
>  > > > > grep tux < lista_arquivos.txt
>  > > > >
>  > > > > Alguem pode me ajudar?
>  > > > >
>  > > > > Obrigado!
>  > > > >
>  > > > > Rafael
>  > > > >
>  > > > >
>  > > > >
>  > > >
>  > > > --
>  > > > ------------------------------------
>  > > > André Marques Saunite
>  > > > e-mail/MSN: saunite@... <saunite%40gmail.com><saunite%40gmail.com>
>
>  > > > Linux User - 308676
>  > > > ------------------------------------
>  > > >
>  > > > [As partes desta mensagem que não continham texto foram removidas]
>  > > >
>  > > >
>  > > >
>  > >
>  > > --
>  > > Tiago B Peczenyj
>  > > Linux User #405772
>  > >
>  > > http://peczenyj.blogspot.com/
>  > >
>  > > [As partes desta mensagem que não continham texto foram removidas]
>  > >
>  > >
>  > >
>  >
>  >
>  >
>  > --
>  > Abraços,
>  > Julio
>  > http://www.julioneves.com - Um livro sobre Bash completo e on-line
>  > :wq
>  >
>  >
>  > [As partes desta mensagem que não continham texto foram removidas]
>  >
>
>
> 



-- 
Tiago B Peczenyj
Linux User #405772

http://peczenyj.blogspot.com/


reply via email to

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