On Wed, 10 May 2006 3:17pm  -0300, Julio Cezar Neves - DATAPREVRJ wrote:

> Mas uma coisa eu já testei: o find com xargs é *muito* mais rápido do
> que com exec.

Sim. Seria quase que como comparar a chamada 100 vezes repetida de um
programa contra duas ou uma. Tem o overhead do sistema operacional de
duplicar o chamador, reescrever e executar.

Mas ha diversos casos (a maioria) em que o xargs vai silenciosamente
executar um por vez, tornando o procedimento _bem_ mais custodo do que
apenas um find com exec.

Tenta substituir valores em um xargs. Veja como ele vai quebrar os
argumentos. Outra desvantagem de usar xargs tradicional: Nao existe nenhum
padrao de implementacao. POSIX tem uma definicao simples e que ninguem
segue, tradicionalmente. Tente usar xargs em um GNU/Linux e depois em um
sistema BSD (MacOSX, OpenBSD, etc).

Para evitar problemas com xargs e ainda assim usar uma funcionalidade
similar (mais muito mais melhorada pelo proprio shell, que seria o lugar
correto de se fazer isto), o zsh tem o "zargs".

  zargs -- /var/spool/postfix/deferred/*/* -- postcat > arq

OBS: Se nao me engano o postcat pode receber "argumentos" pela stdin, nao?

--
Felipe Kellermann


---------------------------------------------------------------------
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: [EMAIL PROTECTED]
---------------------------------------------------------------------
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




Yahoo! Grupos, um serviço oferecido por:
PUBLICIDADE


Links do Yahoo! Grupos

Responder a