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

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

Re: [shell-script] Busca em ShellScript


From: Tiago Peczenyj
Subject: Re: [shell-script] Busca em ShellScript
Date: Sat, 2 Feb 2013 08:40:28 -0200

Ola

Rafael o seu exemplo é muito bom, porém tem uma ineficiencia: vc vai
executar o grep em cada arquivo. É muito mais vantagem executar o grep
poucas vezes mas passar um numero grande de arquivos pois vc evitar o
overhead iniciar o processo.

Por isso é comum fazer um pipe para o xargs vc evita fazer

grep "string" a1
grep "string" a2
grep "string" a3
grep "string" a4

pois vai fazer

grep "string" a1 a2 a3 a4

agora vc não precisa do pipe se vc fizer

$ find <dir> -type f -exec grep -i "string" {} \+

Veja a diferença em um exemplo:

$ time find work/cogmatch/ -type f -exec grep -l "PSA" {} \+
...
real 0m0.298s
user 0m0.143s
sys 0m0.151s

$ time find work/cogmatch/ -type f -exec grep -l "PSA" {} \;
...
real 0m13.526s
user 0m2.854s
sys 0m9.285s

geralmente vc ganha um pouco de performance usando esta tecnica.

2013/2/1 Rafael Henrique da Silva Correia <address@hidden>

> Acrescentando meus 0,02 centavos (li alternativas ótimas nas respostas do
> pessoal).... eu geralmente uso algo assim:
>
> $ find <dir> -type f -exec grep -i "string" \;
>
> Espero que vc consiga achar o find perfeito para seu problema ... ;)
>
> Até+
>
> Em 1 de fevereiro de 2013 15:53, Armando Barsotini Neto <
> address@hidden> escreveu:
>
> > **
> >
> >
> > Boa Tarde!
> >
> > Pessoal, estou utilzando o comando abaixo para pesquisar uma palavra
> dentro
> > de uma arquivo utilizando o "grep -i" (não sensitivo):
> >
> > find . | xargs grep -i "string"
> >
> > Porém, ele faz a varredura no servidor inteiro e isso demora muito...
> teria
> > como limitar essa busca em um determinado diretório e seus subdiretórios?
> > Agradeço!
> >
> > Att,
> >
> > Armando Barsotini Neto
> >
> > Linux User # 503670
> > Ubuntu User # 30175
> >
> > [As partes desta mensagem que não continham texto foram removidas]
> >
> >
> >
>
>
>
> --
> Rafael Henrique da Silva Correia
> http://abraseucodigo.com.br
>
> Bacharel em Ciência da Computação
> Administrador de Sistemas Linux
> Certificado pela LPIC - 101 <http://www.lpi.org/>
> Certificado Novell (CLA) <http://www.novell.com/training/certinfo/cla/>
>
>
> [As partes desta mensagem que não continham texto foram removidas]
>
>
>
> ------------------------------------
>
> ---------------------------------------------------------------------
> 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
> ---------------------------------------------------------------------
> 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
>
>
>


-- 
Tiago B. Peczenyj
Linux User #405772

http://about.me/peczenyj


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



reply via email to

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