Um grande número de arquivos .ppt (Powerpoint) está disponível para a linha de comando em vários diretórios de uma unidade USB. O objetivo é encontrar o arquivo .ppt com uma frase sensível a maiúsculas e minúsculas:
Frase: "Retorno do investimento"
Seria preferível que o mecanismo de pesquisa fosse recursivo. Bônus-rodada para explicações que, com uma explicação, o mecanismo de trapping e build-out para recursivamente procurando o disco. Obrigado
Sucesso graças ao Steeldriver por apontar para um mecanismo de pesquisa útil:
grep -rnw '/path/to/somewhere/' -e "pattern"
-r
ou -R
é recursivo, -n
é o número da linha e -w
significa coincidir com a palavra inteira. -l
(letra minúscula L) pode ser adicionado para fornecer apenas o nome do arquivo dos arquivos correspondentes. Além desses, --exclude
, --include
, --exclude-dir
ou --include-dir
flags podem ser usados para pesquisas eficientes:
Isso só pesquisará os arquivos com extensões .c ou .h:
grep --include=\*.{c,h} -rnw '/path/to/somewhere/' -e "pattern"
Isso excluirá a pesquisa de todos os arquivos que terminem com a extensão .o:
grep --exclude=*.o -rnw '/path/to/somewhere/' -e "pattern"
--exclude-dir
e --include-dir
. Por exemplo, isso excluirá as pastas dir1 /, dir2 / e todas elas correspondentes a * .dst /: grep --exclude-dir={dir1,dir2,*.dst} -rnw '/path/to/somewhere/' -e "pattern"
Isso funciona muito bem para mim, para alcançar quase o mesmo propósito como o seu.
Para mais opções, consulte man grep
.