Estou usando o servidor ubuntu 12.04, agora quero fazer backup de alguns arquivos usando o rsync, aqui está uma tentativa:
rsync -aAX $HOME/Documents/* $HOME/Backups/TEST --exclude={$HOME/Documents/another/*,$HOME/Documents/temp/*}
Como você pode ver, desejo fazer backup de todos os arquivos da pasta $ HOME / Documents para a pasta $ HOME / Backups / TEST , mas excluir os arquivos da pasta another e temp . Mas eu falhei, o rsync ainda copiava os arquivos nas duas pastas excluídas:
ls $HOME/Backups/TEST/another
test
test é um arquivo na pasta outro e também é copiado, embora eu exclua o arquivo no rsync, por quê? Como permitir que esses arquivos sejam realmente excluídos?
--exclude=/foo
excluirá o diretóriofoo
diretamente na fonte, mas--exclude=foo
excluirá todos os diretórios denominados foo, mesmo em subdiretórios.Você pode achar mais fácil adicionar
.rsync-filter
arquivos nos diretórios de origem e usar a-F
opçãoNa página do manual:
Por exemplo: em $ HOME / Documents / .rsync-filter
Em vez de
-
, você também pode escrever a palavra inteiraexclude
.Agora você pode
fonte