rsync --compare-dest está sendo ignorado

0

Atualmente, estou tentando copiar os arquivos modificados entre duas pastas e quero que os arquivos com diferenças sejam copiados para a pasta new .

A estrutura da pasta é a seguinte:

..
|-- update+old
|   |-- new
|   '-- pt
|       '-- abc
'-- web
    '-- abc

Rapidamente explicando:

update+old/new - Where the new files should be (--compare-dest)
update+old/pt/abc - The original files (destination)
web/abc - The files I've changed (source)

Estou executando o comando:

rsync -av "$PWD/web/abc/" "$PWD/update+old/pt/abc/" --compare-dest="$PWD/update+old/new/"

É simplesmente pulando new e todas as alterações estão sendo feitas para update+old/pt/abc/ diretamente, deixando update+old/new/ completamente vazia.

Eu tentei --dry-run ( -n ) mas ele não fornece nenhuma informação. (Costumava dizer que update+old/new/ não existe)

Estou fazendo algo errado ou entendi mal qual é o uso do argumento --compare-dest= ?

Caso seja necessário, esta é a saída de rsync --version , rodando no Debian 8.6:

root@webtest:/var/www/c1s.int# rsync --version
rsync  version 3.1.1  protocol version 31
Copyright (C) 1996-2014 by Andrew Tridgell, Wayne Davison, and others.
Web site: http://rsync.samba.org/
Capabilities:
    64-bit files, 64-bit inums, 64-bit timestamps, 64-bit long ints,
    socketpairs, hardlinks, symlinks, IPv6, batchfiles, inplace,
    append, ACLs, xattrs, iconv, symtimes, prealloc

rsync comes with ABSOLUTELY NO WARRANTY.  This is free software, and you
are welcome to redistribute it under certain conditions.  See the GNU
General Public Licence for details.

O qual foi instalado há algumas horas executando apt-get install rsync .

    
por Ismael Miguel 12.12.2016 / 17:04

1 resposta

0

DUH!

Os diretórios são trocados .

O comando deve ser assim:

rsync -av "$PWD/web/abc/" "$PWD/update+old/new/" --compare-dest="$PWD/update+old/pt/abc/"

Ainda não tem o resultado esperado (apenas copia tudo), mas isso é para outra pergunta.

    
por 12.12.2016 / 17:44

Tags