Estou usando o rsync para sincronizar arquivos em várias máquinas, usando o seguinte:
rsync -az -e "ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no" \
--delete --delete-excluded --force --exclude=.git --exclude=.bundle \
--exclude=tmp --exclude=log/* --exclude=*.log --exclude=*.pid \
user@host:/path/to/src/ /var/build/dest
Desejo excluir a transferência de todos os arquivos de log da origem para o destino e excluir todos os existentes no destino. Então, eu estou usando --exclude=*.log
com o --delete-excluded
que funciona muito bem.
Mas quero manter um determinado arquivo de log intacto no destino. Eu quero uma --exclude-from-delete
opção
Isso é possível com o rsync?
linux
command-line
rsync
Roubar
fonte
fonte
Respostas:
O filtro "proteger" deve realizar exatamente o que você deseja:
Basta especificar o seguinte filtro antes que o relevante exclua:
(Observe o espaço após a letra P.)
fonte