0 votes

Quelle commande compare récursivement deux répertoires et valide qu'ils sont des images miroir exactes (si possible) ?

Je déplace des fichiers de pCloud vers Google Drive et lorsque j'utilise le Finder, le processus de copie s'interrompt parfois en raison de fichiers invisibles et autres.

J'utilise donc cp -r dans Terminal (les lecteurs partagés de premier niveau de Google Drive doivent être créés dans l'outil d'administration de Drive, cette partie est donc un processus manuel).

le pilote pCloud continue de se planter en cours de fonctionnement, je dois donc redémarrer le pilote et recommencer là où je me suis arrêté en réémettant la commande.

Je me demande s'il existe une commande dans le terminal MacOS qui confirmera que j'ai des copies miroir dans Google Drive du dépôt pCloud, étant donné toutes les tentatives ratées dues à des fichiers invisibles et à des crashs de pilotes.

15voto

yoliho Points 340

La réponse à cette question est rsync. Pas seulement pour faire la copie comme @nohillside le suggère mais il peut être configuré pour faire juste une vérification.

Normalement, je dirais que vous devez obtenir une version de rsync plus récente que celle fournie par MacOS, car la version MacOS ne conserve pas les attributs étendus, mais comme les synchroniseurs en nuage ne les conservent pas non plus, cela n'a pas d'importance.

Vous pouvez exécuter rsync pour faire un essai, c'est-à-dire ne pas copier de fichiers mais juste signaler les différences. La commande est

rsync --dry-run -av pcloud-dir/ gdrive-dir/

Une copie peut être faite en enlevant --dry-run Cette méthode présente un autre avantage par rapport au Finder : si la copie est interrompue, vous pouvez simplement répéter la même commande et elle ne recopiera pas les fichiers déjà copiés.

4voto

pmagwood Points 159

D'accord avec @mmmmmm ; rsync est le meilleur choix par rapport à cp

Une alternative à rsync pour déterminer

s'il y a une commande dans le terminal MacOS qui confirmera que j'ai bien des copies miroir dans Google Drive du référentiel pCloud

on peut utiliser le diff commandement. diff peut fournir une comparaison de deux répertoires et retournera ce qui n'existe que dans un dossier ou dans l'autre, ou rien du tout s'ils sont identiques.

diff -r /path/to/dir1 /path/to/dir2

Et, si @wide_eyed_pupil vous avez l'intention de rester avec cp vous pouvez ajouter certains arguments pour ne pas copier les fichiers déjà présents dans la destination et pour préserver les attributs et les autorisations.
Par exemple :

cp -nRav

jeter un coup d'œil à man cp pour voir ce que font tous les arguments.

Aussi, à noter de la page de manuel

COMPATIBILITÉ Les anciennes versions de l'utilitaire cp avaient une option -r. Cette implémentation supporte cette option ; cependant, son utilisation est fortement fortement déconseillée, car elle ne copie pas correctement les fichiers spéciaux, les liens symboliques ou les fifo's.

(utiliser -R à la place)

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X