Pular para o conteúdo

Problema com Find depois usar o pipe [RESOLVIDO]

Responder tópico
  • Denunciar
  • Indicar

1. Problema com Find depois usar o pipe [RESOLVIDO]

Enviado em 20/03/2013 - 20:16h

Amigos,

Preciso criar uma linha de comando onde eu consiga localizar arquivos com extensão .txt e .doc e depois ler os arquivos e somar quantas linhas tem.

Sou novo em shell script e digitei o comando abaixo mas não está dando certo, preciso de ajuda.

Quebrando o código o find sozinho dá certo ele realmente ta achando os .txt e .doc mas ai não consigo somar as linhas de todos esses arquivos pq quando dou o cat ele não tá pegando os arquivos econtrados pelo find

find / -regextype posix-extended -regex '.*\.(txt|doc)' | cat *.txt *.doc > resultado.txt | wc -l resultado.txt

Responder tópico

2. Re: Problema com Find depois usar o pipe [RESOLVIDO]

Enviado em 21/03/2013 - 00:02h

O programa companheiro do find, para ser usado em pipelines, é o xargs. Eu recomendo usá-lo da seguinte forma:

find _diretório_ ( -iname "*.txt" -o -iname "*.doc" ) -print0 | xargs -0 cat | wc -l 
Claro que você vai fazer melhor proveito se ler a documentação.

3. Re: Problema com Find depois usar o pipe [RESOLVIDO]

Enviado em 21/03/2013 - 10:01h

paulo1205 escreveu:

O programa companheiro do find, para ser usado em pipelines, é o xargs. Eu recomendo usá-lo da seguinte forma:

find _diretório_ ( -iname "*.txt" -o -iname "*.doc" ) -print0 | xargs -0 cat | wc -l 


Claro que você vai fazer melhor proveito se ler a documentação.
Bom dia amigo.

Obrigado pela ajuda me esclareceu bastante, mas tive que alterar um pouco pra chegar no resultado :D

Dá uma olhada

find _diretorio_ -name "*.c" -print0 -or -name "*.h" -print0 | xargs -0 wc -l

Responder tópico

Responder tópico

Entre na sua conta para responder.

Fazer login para responder