Assumindo que por “arquivo oculto” você quer dizer arquivos cujo nome começa com um ponto ou que estão localizados em algum lugar em um diretório cujo nome começa com um ponto, e não outras formas de arquivos invisíveis , o comando a seguir imprime os nomes de todos os arquivos ocultos. É lento, pois repassa todos os nomes de arquivos em qualquer lugar do seu sistema.
sudo find / -name '.*' \( -type d -exec find {} \; -prune -o -print \)
Explicação:
-type d -exec find {} \; -prune
executa find
em todos os diretórios (cujo nome corresponde .*
) e ignora a descida nesse diretório por causa do -prune
.
-type d … -o -print
faz com que todos os não diretórios correspondentes .*
sejam impressos.
Se você estiver procurando por um arquivo com um nome ou padrão específico:
sudo find / -name 'Foo*' -path '*/.*'
O */.*
padrão em todo o caminho força as correspondências a estarem em um diretório oculto.
Você pode adicionar -xdev
depois /
para evitar atravessar sistemas de arquivos especiais e discos removíveis.
sudo
é desnecessário, a menos que você precise procurar nos diretórios aos quais não tem acesso. A pesquisa em diretórios ocultos não requer privilégios elevados, se é por isso que está sendo usada no seu exemplo.