Como filtrar arquivos e diretórios ocultos em 'find'?

3

Eu gostaria de listar todos os arquivos e diretórios não ocultos no meu caminho.

Isso significa que os arquivos que começam com . devem ser excluídos do resultado, juntamente com os arquivos cujo caminho contenha um diretório oculto:

foo/bar/.bazz.rc # Exclude
foo/.bar/bazz.rc # Exclude

Como faço isso? Eu tentei:

find -maxdepth 2 -not -iname "*/.*"

Mas ainda tenho arquivos ocultos em meus resultados.

    
por Adam Matan 29.10.2014 / 13:05

1 resposta

2

Escape o ponto e use path em vez de iname :

find .  -not -path "*/\.*"
  • * - qualquer prefixo
  • / - diretório / separador de arquivos
  • \. - escaped . .
  • * - qualquer sufixo
por Adam Matan 29.10.2014 / 13:05