O Rsync tem uma opção para remover os arquivos de origem . Combinado com o sinalizador - checkeck , ele deve ser confiável o suficiente para isso tipo de operação.
No entanto, você pode usar o git-annex para a migração (ele usará rsync sob o capô para as transferências reais) .
No host A:
mkdir annex
git init
git annex init "host A"
No host B:
git clone ssh://A/path/to/annex annex
git annex init "host B"
git annex sync
Mais uma vez no host A:
git remote add b ssh://B/path/to/annex
Adicione os arquivos ao git-annex no host A, depois de copiá-los para a pasta do anexo:
git annex add .
git commit . -m "Added files"
find /path/to/files* -mtime +5 -exec git annex move {} --to b\;
git-annex sync