você costuma dizer onde encontrar a pesquisa e o que procurar. Portanto, a sintaxe dos caminhos para pesquisar e o que você está realmente tentando encontrar é diferente.
Para o caso de uso mencionado, suponha que você queira encontrar o arquivo passwd
em /etc
:
find /etc/ -name passwd
você está dizendo "começando no etc, procure um arquivo cujo nome seja passwd
se você não especificar critérios (ou "opções" em find language), o que encontrar é, ele inicia no caminho (ou caminhos) especificado e localiza todos os arquivos e diretórios abaixo, recursivamente. Portanto, as opções "filtram" esses arquivos para restringir o que você está procurando.
Encontre todos os arquivos JPG em qualquer lugar no seu sistema de arquivos:
find / -name "*jpg"
Recomenda-se o uso de citações em suas opções, pois, do contrário, a expansão do shell pode causar dores de cabeça.
Encontre todos os arquivos PDF, independentemente do caso, em Documentos ou Downloads:
find Documents/ Downloads/ -iname "*pdf"
Se você fizer man find
e rolar para baixo até TESTES, você encontrará todos os "critérios" que a pesquisa pode usar para restringir sua pesquisa. Você pode pesquisar arquivos com nomes de arquivos específicos, pertencentes a usuários ou grupos específicos, com permissão de arquivo específica, sendo de um tipo específico (por exemplo, -type d
encontrará apenas diretórios, enquanto -type f
encontrará apenas arquivos simples, exceto diretórios) , arquivos novos ou mais antigos que um número específico de dias (ou minutos), arquivos vazios, executáveis e assim por diante.
Na man page do find, você também encontrará uma seção chamada ACTIONS, que pode seguir os critérios e ser acionada por qualquer arquivo que corresponda a todos os critérios. Assim, você pode ter find
fazendo coisas como excluir arquivos que encontrar, executar comandos arbitrários neles e assim por diante.
Mas é claro que a sintaxe básica permanece:
find [starting path(s)] [conditions or criteria]