Vous pouvez utiliser l'outil diff :voir les options -q et -r
-q --brief
Output only whether files differ.
-r --recursive
Recursively compare any subdirectories found.
Exemple :
diff -qr dir1 dir2
J'ai une approche simple pour cela :utilisez le mode rsync-preview :
rsync -aHSvn --delete old_dir/ new-dir/
Les fichiers affichés comme "à supprimer" par cette commande seront les "nouveaux" fichiers. Les autres qui doivent être transférés ont changé d'une certaine manière. Voir la page de manuel rsync pour plus de détails.
Le diffutils
le forfait comprend un lsdiff
outil. Passez simplement la sortie de diff -u
à lsdiff :
diff -u --other-diff-options path1 path2 | lsdiff