Eu usaria dois comandos rsync --dry-run
em vez de um único diff
. Por exemplo, dados cinco arquivos em que alguns são mais recentes em Folder1
e alguns são mais recentes em Folder2
,
$ ls -port Folder?/*/*
-rw-r--r-- 1 Deditos 0 25 Jan 12:39 Folder2/subfolder/file03.txt
-rw-r--r-- 1 Deditos 0 25 Jan 12:39 Folder2/subfolder/file02.txt
-rw-r--r-- 1 Deditos 0 25 Jan 12:39 Folder2/subfolder/file01.txt
-rw-r--r-- 1 Deditos 0 25 Jan 12:39 Folder1/subfolder/file05.txt
-rw-r--r-- 1 Deditos 0 25 Jan 12:39 Folder1/subfolder/file04.txt
-rw-r--r-- 1 Deditos 0 25 Jan 12:39 Folder1/subfolder/file03.txt
-rw-r--r-- 1 Deditos 29 25 Jan 12:44 Folder1/subfolder/file01.txt
-rw-r--r-- 1 Deditos 29 25 Jan 12:44 Folder1/subfolder/file02.txt
-rw-r--r-- 1 Deditos 29 25 Jan 13:13 Folder2/subfolder/file04.txt
-rw-r--r-- 1 Deditos 29 25 Jan 13:13 Folder2/subfolder/file05.txt
Você pode verificar o que o rsync [SRC] [DEST]
poderia copiar de um diretório de origem para atualizar um diretório de destino:
$ rsync --dry-run -ariu ./Folder1/ ./Folder2/
.d..t.... ./
.d..t.... subfolder/
>f.st.... subfolder/file01.txt
>f.st.... subfolder/file02.txt
$ rsync --dry-run -ariu ./Folder2/ ./Folder1/
.d..t.... ./
.d..t.... subfolder/
>f.st.... subfolder/file04.txt
>f.st.... subfolder/file05.txt
Isso também fornece algumas informações sobre a natureza da diferença entre os arquivos, por exemplo, >f.st....
significa que o tamanho ( s
) e os timestamps ( t
) são diferentes.
NB Se você omitir o --dry-run
flag, então rsync
tentará a transferência, então tenha cuidado com isso.