Simplificando, rsync
usa caminhos relativos para determinar o que excluir. De a rsync
manpage :
If the pattern starts with a / then it is anchored to a particular spot in the hierarchy of files, otherwise it is matched against the end of the pathname. This is similar to a leading ^ in regular expressions. Thus "/foo" would match a file named "foo" at either the "root of the transfer" (for a global rule) (…)
A maneira mais simples de contornar isso é usar --relative
/ -R
, que permite excluir o Dropbox assim:
rsync -avR --exclude='/Users/alex/Dropbox' /Users/alex /Volumes/Backup_Mac
O nome relative
refere-se a como rsync
envia os caminhos e, portanto, não tem nada a ver com a especificação de padrões de exclusão absolutos.
Observe que isso cria a árvore de diretórios completa /Volumes/Backup_Mac/Users/alex/
, mas isso não é uma coisa terrivelmente ruim no seu caso.