J'utilise habituellement rsync
pour cette tâche :
rsync -nav --delete DIR1/ DIR2
SOYEZ TRÈS PRUDENT pour toujours utiliser le -n
, alias --dry-run
ou il synchronisera (modifiera le contenu) les répertoires.
Cela permettra de comparer les fichiers en fonction des temps de modification et des tailles des fichiers... I pensez à c'est ce que tu veux vraiment, ou du moins ça ne te dérange pas si ça fait ça ? J'ai l'impression que tu veux juste que ça arrive. plus rapide Il n'est pas nécessaire qu'il ignore la différence entre les contenus des fichiers. Si vous voulez qu'il ne liste pas des fichiers différents avec des noms identiques, je pense que l'ajout de la balise --ignore-existing
le fera.
Sachez également que le fait de ne pas mettre un /
à la fin de DIR1
l'amènera à comparer le répertoire DIR1
avec le contenu de DIR2
.
La sortie est un peu verbeuse, mais elle vous montrera quels fichiers/répertoires diffèrent. Les fichiers/répertoires présents dans DIR2
et non dans DIR1
sera précédé du mot deleting
.
Dans certaines situations, la réponse de @slartibartfast peut être plus appropriée, bien que vous deviez supprimer l'élément -type d
pour activer la liste des fichiers non répertoriés. rsync
sera plus rapide si vous avez un nombre important de fichiers/répertoires à comparer.