diff dice que los archivos son diferentes incluso después de la sincronización con rsync

-1

Para sincronizar dos directorios, ejecuto

diff -r -q path/to/dir1 path/to/dir2 1>/dev/null
if [[ $? == "0" ]]
then
  echo "Directories are exact copies of each other"
else
  rsync -av --delete path/to/dir1 path/to/dir2
fi

Sin embargo, si ejecuta el script nuevamente, diff dice que los directorios siguen siendo diferentes.

Sin embargo, al crear dos carpetas vacías testy sync, diff dice que son lo mismo.

Narusan
fuente

Respuestas:

1

Necesitarías:

diff -r -q path/to/dir1 path/to/dir2/dir1 1>/dev/null
if [[ $? == "0" ]]
then
  echo "Directories are exact copies of each other"
else
  rsync -av --delete path/to/dir1 path/to/dir2
fi

Como rsync creará una nueva carpeta dir1en dir2preservar realmente toda la dir1carpeta y no sólo su contenido.

testeaxeax
fuente
¿Cómo puedo hacer que rsync sincronice el contenido del directorio, sin crear un nuevo subdirectorio?
Narusan
1
@Narusan Necesitaría rsync -ar --delete path/to/dir1 path/to/dir2, -r significa --recursivo. Para obtener más información, consulte el manual de rsync (Para abrir el uso manual man rsync).
testeaxeax