
Tenho algumas pastas que foram duplicadas por engano e preciso mesclá-las. Digamos que a pasta A contenha o arquivo X e a pasta B contenha o arquivo Y, eu gostaria que o arquivo X fosse copiado para a pasta B. Mas, é claro, posso enfrentar casos mais complexos, onde ambas as pastas A e B contêm o mesmo arquivo X : nesses casos, eu gostaria de manter a cópia mais recente do arquivo, então o rsync deve comparar os dois arquivos, e se a origem for mais antiga basta pular, caso contrário o destino é o mais antigo, sobrescrever.
Quais parâmetros devo colocar na linha de comando do rsync?
Foi isso que encontrei pesquisando no Google, mas não acho correto.
rsync -avz --ignore-existing src dest
A página de manual está de alguma forma além de mim.
PS Nos casos em que existe um arquivo em ambas as pastas, o melhor seria sobrescrever o mais antigo na pasta de destino e ao mesmo tempo manter uma cópia do mais antigo, apenas como backup caso você precise voltar para o anterior
Responder1
Eu usaria:
rsync -abviuzP src/ dest/
-i
ativa o formato detalhado, que mostra mais informações do que o formato padrão-b
faz backup do rsync dos arquivos que existem em ambas as pastas, anexando~
ao arquivo antigo. Você pode controlar esse sufixo com--suffix .suf
-u
faz com que a transferência rsync ignore arquivos que são mais recentes em dest do que em src-z
ativa a compactação, o que é útil ao transferir arquivos facilmente compactáveis através de links lentos-P
liga--partial
e--progress
--partial
faz com que o rsync mantenha os arquivos parcialmente transferidos se a transferência for interrompida--progress
mostra uma barra de progresso para cada transferência, útil se você transferir arquivos grandes