Dica - Como utilizar o find e o grep em pastas com espaços.
Estive tentando achar um arquivo dentro do servidor SAMBA, que tem extensão .doc e em seu conteúdo uma determinada palavra.
Pesquisei na web e achei o seguinte comando, utilizando o grep e o find:
Mas acontece que em uma subpasta foi utilizado espaços em seu nome, o que retornava o seguinte erro
Ou seja, o xargs estava passando para o grep, arquivos e pastas com espaços, de forma fragmentada, e para resolver o problema, pesquisei e o comando inicial ficou assim:
Pronto, pesquisa feita.
Pesquisei na web e achei o seguinte comando, utilizando o grep e o find:
# find /home/user/pastax/pastay/docs\ anterirores\ a\ 2009/* -name "*.doc" | xargs grep -i 'determinada palavra'
Mas acontece que em uma subpasta foi utilizado espaços em seu nome, o que retornava o seguinte erro
# grep: Contas/677674.doc: No such file or directory
Ou seja, o xargs estava passando para o grep, arquivos e pastas com espaços, de forma fragmentada, e para resolver o problema, pesquisei e o comando inicial ficou assim:
# find /home/user/pastax/pastay/docs\ anterirores\ a\ 2009/* -name "*.doc" | xargs -d '\n' grep -i 'determinada palavra'
Pronto, pesquisa feita.
Comentários
Postar um comentário
Parafraseando do ditado "quem conta um conto aumenta um ponto", aqui "quem comenta um post, aumenta um ponto"!