Como rsync para diretório diferente?

5

Aqui está o que eu quero alcançar:

Execute o Rsync para comparar dois diretórios recursivamente assim:

rsync -r /source /target

mas na verdade não rsync entre os diretórios. Eu quero que as diferenças resultantes sejam rsyncd / copiado para outro diretório 3.

Alguma ideia?

    
por harp 01.12.2012 / 11:06

1 resposta

6

--compare-dest é seu amigo aqui:

rsync -rvn --compare-dest /target/ /source/ /extra_target/

(Remova -v e -n depois de confirmar que funciona para você)

Aqui está uma sessão do shell mostrando:

dennis@lightning:~$ cd /tmp
dennis@lightning:/tmp$ mkdir rs1
dennis@lightning:/tmp$ touch rs1/f1
dennis@lightning:/tmp$ rsync -av rs1/ rs2/
sending incremental file list
created directory rs2
./
f1

sent 96 bytes  received 34 bytes  260.00 bytes/sec
total size is 0  speedup is 0.00
dennis@lightning:/tmp$ touch rs1/f2
dennis@lightning:/tmp$ rsync -avn rs1/ rs2/
sending incremental file list
./
f2

sent 71 bytes  received 18 bytes  178.00 bytes/sec
total size is 0  speedup is 0.00 (DRY RUN)
dennis@lightning:/tmp$ rsync -avn rs1/ rs3/
sending incremental file list
created directory rs3
./
f1
f2

sent 49 bytes  received 15 bytes  128.00 bytes/sec
total size is 0  speedup is 0.00 (DRY RUN)
dennis@lightning:/tmp$ rsync -rnv --compare-dest /tmp/rs2/ rs1/ rs3/
sending incremental file list
created directory rs3
f2

sent 49 bytes  received 15 bytes  128.00 bytes/sec
total size is 0  speedup is 0.00 (DRY RUN)
    
por 01.12.2012 / 11:50

Tags