Como faço referência a todos os arquivos, incluindo arquivos ocultos? [duplicado]

2

Eu sei que * faz referência a todos os arquivos, exceto arquivos ocultos, como fazer referência a todos os arquivos, incluindo arquivos ocultos cujos nomes começam com . no bash?

    
por tmpbin 27.11.2015 / 05:51

4 respostas

7

o bash tem uma dotglob opção que faz com que * inclua nomes começando com . :

echo *           # let's see some files
shopt -s dotglob # enable dotglob
echo *           # now with dotfiles
shopt -u dotglob # disable dotglob again
echo *           # back to the beginning
    
por 27.11.2015 / 06:30
3

Use a opção de shell dotglob:

shopt  -s dotglob
echo *

Para mais informações, consulte o manual da bash: link

    
por 27.11.2015 / 06:34
1

Você pode usar a expansão de chaves e escrever {,.}* , que expande para * .* e, portanto, inclui arquivos normais e ocultos.

    
por 27.11.2015 / 08:38
0
files=($(ls -a))
for file in "${files[@]}"; do
  echo "${file}"
done
    
por 27.11.2015 / 06:06

Tags