Gostaria de sincronizar o conteúdo de dois diretórios.
- Sem sobrescrever, mas para criar uma cópia se dois arquivos tiverem o mesmo nome, mas tamanhos diferentes
- Sem duplicar se dois arquivos tiverem o mesmo nome e tamanho.
- Para trabalhar recursivamente
Até agora encontrei o seguinte comando que pode funcionar
$ rsync -varE --progress ~/folder /volumes/server/folder
Mas não tenho certeza do que a -E
bandeira faz. Foi sugerido por um usuário em bananica.com, mas não conseguiu ver uma descrição no manual. Isso faria o que eu preciso com sucesso?
Responder1
-E na verdade preserva atributos estendidos no OS X, mas -a (--archive) implica -p (--perms) que implica --executabilidade.
-b (--backup) adiciona um til ao final dos arquivos que normalmente seriam substituídos:
rsync -ab ~/folder /Volumes/server/
-b --suffix _old
renomearia file.txt para file.txt_old
rsync compara tamanhos de arquivo e tempos de modificação por padrão. --size-only compara apenas tamanhos. -c compara somas de verificação, mas é mais lento.