Puede usar la herramienta de diferencias:consulte las opciones -q y -r
-q --brief
Output only whether files differ.
-r --recursive
Recursively compare any subdirectories found.
Ejemplo:
diff -qr dir1 dir2
Tengo un enfoque simple para esto:use el modo de vista previa de rsync:
rsync -aHSvn --delete old_dir/ new-dir/
Los archivos que se muestran como "para ser eliminados" por ese comando serán los archivos "nuevos". Los otros que se van a transferir han cambiado de alguna manera. Consulte la página del manual de rsync para obtener más detalles.
El diffutils
el paquete incluye un lsdiff
herramienta. Simplemente pase la salida de diff -u
a lsdiff:
diff -u --other-diff-options path1 path2 | lsdiff