GNU/Linux >> Tutoriales Linux >  >> Linux

¿Compara directorios pero no contenido de archivos?

Con

diff -r

Puedo hacer esta tarea, sin embargo, lleva mucho tiempo porque diff comprueba el contenido del archivo.

Quiero algo que determine que dos archivos son iguales en cuanto a su tamaño, última modificación, etc. Pero no verifique el archivo poco a poco (por ejemplo, un video toma mucho tiempo).

¿Hay alguna otra manera?

Respuesta aceptada:

rsync, de forma predeterminada, solo compara metadatos de archivos. eso significa marca de tiempo, tamaño y atributos. entre otros. pero no el contenido de los archivos.

rsync -n -a -i --delete source/ target/

explicación:

  • -n en realidad, no copie ni elimine <– ¡ESTO ES IMPORTANTE! 1
  • -a compare todos los metadatos del archivo, como la marca de tiempo y los atributos
  • -i imprimir una línea de información por archivo
  • --delete también reportar archivos que no están en la fuente

nota:es importante agregar los nombres de los directorios con una barra inclinada. esto es algo de rsync.

puede acortar las opciones de una letra como esta

rsync -nai --delete source/ target/

si también desea ver líneas impresas para archivos que son idénticos, proporcione -i dos veces

rsync -naii --delete source/ target/

salida de ejemplo:

*deleting   removedfile   (file in target but not in source)
.d..t...... ./            (directory with different timestamp)
>f.st...... modifiedfile  (file with different size and timestamp)
>f+++++++++ newfile       (file in source but not in target)
.f          samefile      (file that has same metadata. only with -ii)

recuerda que rsync solo compara metadatos. eso significa que si el contenido del archivo cambió pero los metadatos permanecieron iguales, rsync informará que el archivo es el mismo. este es un escenario improbable. así que confíe en que cuando los metadatos son los mismos, entonces los datos son los mismos, o tiene que comparar los datos del archivo poco a poco.

bonificación:para obtener información sobre el progreso, consulte aquí:¿Tiempo estimado o trabajo que queda por terminar para rsync?


Linux
  1. Cómo comparar el contenido de dos tarball

  2. ¿Núcleo volcado, pero el archivo principal no está en el directorio actual?

  3. ¿Por qué los archivos no pueden ser manipulados por inode?

  4. Eliminar solo archivos en el directorio en linux NO directorios

  5. ¿Linux cómo copiar pero no sobrescribir?

Cómo mover archivos y directorios en Linux (comando mv)

Cómo comparar y fusionar archivos de texto en Linux

Cómo hacer una copia de seguridad de archivos y directorios usando Rsync en Linux

Mantener los archivos y directorios de Linux sincronizados con rsync

Cómo copiar archivos y directorios en la terminal de Linux

Comando Stat:mostrar atributos de archivos y directorios