Re: [FUG-BR] apagar arquivos - Resolvido

2006-03-21 Por tôpico Paulo Pires
On 3/21/06, Ricardo Campos Passanezi <[EMAIL PROTECTED]> wrote:
> On Tue, Mar 21, 2006 at 07:48:16AM -0300, Renato Botelho wrote:
> >
> > Concordo, pois esse exemplo acima só funciona se você não tiver
> > arquivo dentro de subdiretórios, além de tentar remover subdiretórios
> > caso encontre neles a palavra pesquisada. O comando que eu havia
> > enviado era
> >
> > find /usr/local/Maildir/new -type f | xargs fgrep -l "Milionario" | xargs 
> > rm -f
>
>
> Pode colocar o grep como parâmetro do find também:
>
> find PATH -type f -exec grep "STRING" {} \; | xargs rm

Perigoso.  Pelo que entendo, desse jeito você vai rodar um grep
separado para cada arquivo, que é um overhead bem maior do que enviar
os nomes de todos os arquivos para o xargs(1), que disparará um
conjunto reduzido de instâncias do grep(1), cada uma processando
vários arquivos de uma vez.

> Aí você refinar usando egrep, por exemplo.

--
Um abraço.
Paulo A. P. Pires

... Qui habet aurem audiat quid Spiritus dicat ecclesiis.
___
freebsd mailing list
freebsd@fug.com.br
http://lists.fug.com.br/listinfo.cgi/freebsd-fug.com.br


Re: [FUG-BR] apagar arquivos - Resolvido

2006-03-21 Por tôpico Ricardo Campos Passanezi
On Tue, Mar 21, 2006 at 07:48:16AM -0300, Renato Botelho wrote:
> 
> Concordo, pois esse exemplo acima só funciona se você não tiver
> arquivo dentro de subdiretórios, além de tentar remover subdiretórios
> caso encontre neles a palavra pesquisada. O comando que eu havia
> enviado era
> 
> find /usr/local/Maildir/new -type f | xargs fgrep -l "Milionario" | xargs rm 
> -f


Pode colocar o grep como parâmetro do find também:

find PATH -type f -exec grep "STRING" {} \; | xargs rm


Aí você refinar usando egrep, por exemplo.


-- 
Ricardo Campos Passanezi
___
freebsd mailing list
freebsd@fug.com.br
http://lists.fug.com.br/listinfo.cgi/freebsd-fug.com.br


Re: [FUG-BR] apagar arquivos - Resolvido

2006-03-21 Por tôpico Renato Botelho
On 3/21/06, Paulo Pires <[EMAIL PROTECTED]> wrote:
> On 3/16/06, Ademir Costa Peixoto <[EMAIL PROTECTED]> wrote:
> > Prezados
> >
> > Agradeço a todos que me ajudaram.. no final juntei tudo e criei um .sh
> > assim:
> >
> >
> >
> > #!/bin/bash
> > for f in `ls /usr/local/Maildir/new/`; do
> > grep -l "Milionario" /usr/local/Maildir/new/$f | xargs rm -f
> > done
> >
> >
> > Execurei o .sh e funcionou direitinho... Levou quase 20 min mas apagou
> > tudo.
> >
> >
> > E nem no google eu achei nada parecido.. por isso vou registrar:
> >
> > script para apagar arquivos com uma determinada string no FreeBSD
>
> O comando usando find(1), que alguém enviou, é mais eficiente.  Se é
> para anotar, anote aquele.

Concordo, pois esse exemplo acima só funciona se você não tiver
arquivo dentro de subdiretórios, além de tentar remover subdiretórios
caso encontre neles a palavra pesquisada. O comando que eu havia
enviado era

find /usr/local/Maildir/new -type f | xargs fgrep -l "Milionario" | xargs rm -f

--
Renato Botelho
___
freebsd mailing list
freebsd@fug.com.br
http://lists.fug.com.br/listinfo.cgi/freebsd-fug.com.br


Re: [FUG-BR] apagar arquivos - Resolvido

2006-03-20 Por tôpico Paulo Pires
On 3/16/06, Ademir Costa Peixoto <[EMAIL PROTECTED]> wrote:
> Prezados
>
> Agradeço a todos que me ajudaram.. no final juntei tudo e criei um .sh
> assim:
>
>
>
> #!/bin/bash
> for f in `ls /usr/local/Maildir/new/`; do
> grep -l "Milionario" /usr/local/Maildir/new/$f | xargs rm -f
> done
>
>
> Execurei o .sh e funcionou direitinho... Levou quase 20 min mas apagou
> tudo.
>
>
> E nem no google eu achei nada parecido.. por isso vou registrar:
>
> script para apagar arquivos com uma determinada string no FreeBSD

O comando usando find(1), que alguém enviou, é mais eficiente.  Se é
para anotar, anote aquele.

--
Um abraço.
Paulo A. P. Pires

... Qui habet aurem audiat quid Spiritus dicat ecclesiis.
___
freebsd mailing list
freebsd@fug.com.br
http://lists.fug.com.br/listinfo.cgi/freebsd-fug.com.br