Por causa da globulação . mv name/* .
corresponde apenas aos arquivos na pasta que não iniciam com um ponto ( .
). Você pode alterar esse comportamento definindo dotglob em um shell bash:
shopt -s dotglob
Agora, você pode usar mv name/* .
para mover TODOS os arquivos e pastas.
Como exemplo, há uma pasta contendo dois arquivos: file
e .file
:
$ echo *
file
$ shopt -s dotglob
$ echo *
file .file
Aviso: mv * .[^.]* destination
funciona sem o dotglob, pois corresponde primeiro *
e segundo .[^.]*
, o que corresponde a arquivos / pastas que começam com um ponto (não .
e ..
).