mv
sobrescreverá arquivos, mas recusará substituir diretórios . Não há um único comando que mescle diretórios e remova os diretórios de origem (que é provavelmente o que você quer com mv
). Mesmo rsync --remove-source-files
deixará diretórios vazios.
Você pode usar uma combinação de comandos:
cp -a dev/. .
rm -r dev
que copia tudo em dev
para o diretório atual e, em seguida, remove o diretório dev
.
Ou:
rsync -a --remove-source-files dev/ .
find dev -depth -type d -exec rmdir {} \;
que usa rsync
para mover todos os arquivos e, em seguida, exclui os diretórios vazios deixados para trás.