Escape o ponto e use path
em vez de iname
:
find . -not -path "*/\.*"
-
*
- qualquer prefixo -
/
- diretório / separador de arquivos -
\.
- escaped.
. -
*
- qualquer sufixo
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.
Escape o ponto e use path
em vez de iname
:
find . -not -path "*/\.*"
*
- qualquer prefixo /
- diretório / separador de arquivos \.
- escaped .
. *
- qualquer sufixo Tags command-line hidden-files find