La meilleure façon de continuer le mouvement arrêté (mv) en fusionnant les répertoires?

18

J'ai déplacé (mv) un répertoire assez volumineux sur mon NAS (basé sur Linux), mais j'ai dû interrompre la procédure. N'étant pas un utilisateur Linux régulier, je pensais pouvoir continuer et fusionner le reste plus tard.

mv /oldisk/a /newdisk

La procédure est à mi-chemin, donc le reste de / oldisk / a existe toujours, et / newdisk / a avec les fichiers déjà copiés est déjà présent. Je n'ai aucune idée des fichiers qui ont déjà été copiés. BTW, sous / oldisk / a, bien sûr, contient de nombreux sous-répertoires.

Quelle serait la meilleure façon de déplacer / fusionner les fichiers restants vers / newdisk / a?

Horst Walter
la source

Réponses:

28

rsync --verbose --archive --dry-run /oldisk/a/ /newdisk/a/

Le --dry-run(ou -n) fera un essai à sec, vous montrant ce qu'il ferait sans rien faire.

Si cela semble correct, exécutez le rsync sans l' -noption.

Ce sera une copie, pas un mouvement, ce qui n'est pas tout à fait ce que vous faites, mais c'est plus sûr. Le --archive(ou -a) garantit que toutes les métadonnées de propriété et d'horodatage sont préservées (ce qui n'est pas le cas pour une copie régulière).

cjc
la source
2
La copie est OK, peut toujours supprimer l'ancien répertoire plus tard.
Horst Walter
4
Vous pouvez utiliser --remove-source-filespour supprimer les fichiers qui ont été copiés avec succès. En outre, -Pou --progressaffichera une estimation du nombre de fichiers supplémentaires à effectuer.
deltab
1
donc comme un exemple de coup:rsync --remove-source-files --recursive --times --crtimes 1/* 2/
Sridhar Sarnobat
1
@deltab, --progress dessine une nouvelle barre pour chaque fichier individuel, à la place il y a --info = progress2 pour tout le transfert.
把 友情 留 在 无 盐
Wow, c'est assez triste. Mv est définitivement cassé car il a besoin d'autres outils pour faire ce qu'il devrait être capable de faire lui-même. Je viens de découvrir cela, mv refuse d'écrire dans un répertoire existant, ce qui est assez pathétique. Il est temps de remplacer cette commande par quelque chose de plus fonctionnel.
nigratruo