encontre o arquivo, mas não em diretórios chamados X

encontre o arquivo, mas não em diretórios chamados X

Usando find (especificamente aquele no Windows que vem com o git) para pesquisar arquivos. Quero verificar especificamente toda a minha unidade USB, mas não em pastas que começam com um ponto (especificamente .git e .vs) e não em uma pasta chamada fotos (muitas fotos de férias e aniversários, meu arquivo não está lá).

Como faço para ignorar esses diretórios?

Responder1

find . -type d \( -name .git\* -o -name .vs\* -o name photos \) -prune -o -type f -print

O findcomando acima irá abster-se de entrar nos referidos diretórios e para todos os outros casos exibirá o nome das entidades encontradas que são arquivos regulares.

Responder2

Use o comando abaixo

find . \( ! -name .vs ! -name .git ! -name photos \)  -print

Onde

. first is the current directory

Você pode alterar sua localização conforme sua demanda

Ou você pode usar o comando abaixo também

find .  -not -path "./.git/*" -not -path "./.vs/*" -not -path "./photos/*"

informação relacionada