ls -ld .*
fará o que você quiser.
Eu tentei exibir apenas arquivos ocultos, mas não sei como fazer isso.
Isso está funcionando (mas combinando também pontos em outros lugares)
ls -la | grep '\.'
Estava tentando adicionar ^
, mas não encontrou a solução.
find . -type f -name '\.*' -print
Deve funcionar se você quer listar todos os arquivos ocultos para baixo na hierarquia do diretório.
Aqui estão outras duas maneiras de encontrar apenas arquivos ocultos.
find . -maxdepth 1 -name ".*" -type f -ls
ou
find . -maxdepth 1 -name ".*" -type f -printf "%P \n"
Use -maxdepth
para especificar o quanto você deseja pesquisar na árvore de diretórios.
Uma melhoria na resposta do Flup :
ls -lad .[!.]* ..?*
Isso listará todos os arquivos cujo nome começa com um ponto e que não são .
nem ..
.
Observe que, se você quiser enviar a saída de ls
para grep
(que, como apontado por devnull , nunca é uma boa idéia), certifique-se de usar \ls
ou command ls
porque se ls
tiver um alias para mostrar sua saída colorida ( como é no Debian, por exemplo), sua saída contém seqüências de escape ANSI para criar saída colorida, o que irá atrapalhar seu grep
se seu padrão estiver ancorado no início da linha.
Se você quiser analisar ls
output, deverá adicionar ^
no início da regex e não usar a opção -l
. Usar -l
faz com que cada saída de linha comece com informações de permissão de arquivo ou pasta, e não com nome de arquivo ou pasta. Então você deve usar assim:
ls -Ad | grep '^\.'
Ou você pode fazer com printf
bash builtin:
printf "%s\n" .*
Se você usa zsh
, pode usar:
print -l .*
A solução de val0x00ff é realmente boa, mas esquece diretórios ocultos.
Se você quiser arquivos ocultos e diretórios ocultos , sem. e ..:
find -maxdepth 1 -regex '\./\..+' -printf "%P\n"
Abaixo, um é muito compacto e suporta muitas variantes
1) Exibe arquivos, diretórios e subdiretórios ocultos
find . | grep "^\./\."
2) Exibir apenas diretórios e subdiretórios ocultos
find . -type d | grep "^\./\."
3) Exibe arquivos ocultos somente em diretórios atuais e subdiretórios
find . -type f | grep "^\./\."
4) Exibir arquivos e diretórios ocultos na pasta atual
find . -maxdepth 1 | grep "^\./\."
Você pode tentar:
ls -a |grep -E "^\."
^ indica que é o começo do conteúdo com regexp