Sim, o problema (pelo menos no meu caso) parecia ser duas coisas:
- o
./
inicial precisava ser removido; O rsync espera que as exclusões sejam especificadas de maneira absoluta ou relativa ao diretório de origem.
Os nomes dos arquivos literais - precisavam ser ignorados na sintaxe da expressão regular para evitar que o rsync tentasse interpretá-los como uma expressão.
E sim, acabei com um monte de diretórios vazios, mas um script para excluir diretórios vazios é uma aventura para outra ocasião.