Isso imprime todos os arquivos que são descendentes de seu diretório, ignorando arquivos e diretórios ocultos:
find . -not -path '*/\.*'
Portanto, se você estiver procurando por um arquivo com some text
em seu nome e quiser pular arquivos e diretórios ocultos, execute:
find . -not -path '*/\.*' -type f -name '*some text*'
Explicação:
A opção -path
executa verificações de um padrão na cadeia de caminho inteira. *
é um caractere curinga, /
é um separador de diretório, \.
é um ponto (ele precisa ser de escape para evitar um significado especial) e *
é outro curinga. -not
significa não selecionar arquivos que correspondam a este teste.
Eu não acho que find
seja inteligente o suficiente para evitar a busca recursiva de diretórios ocultos no comando anterior, portanto, se você precisar de velocidade, use -prune
, desta forma:
find . -type d -path '*/\.*' -prune -o -not -name '.*' -type f -name '*some text*' -print