Eu gostaria de usar o rsync para ...
- excluir arquivos no lado de recebimento que também foram excluídos no lado de envio
- exclua outros arquivos que estão no diretório rsynced do lado receptor
Por exemplo, digamos que eu tenho um diretório local-src
:
ANTES: local-src
contém localmente ...
a.txt
b.txt
c.txt
meu diretório remoto que eu gostaria de sincronizar com o conteúdo de local-src
é chamado remote-src
.
ANTES: remote-src
contém remotamente ...
a.txt
b.txt
c.txt
d.txt
README.md
Digamos que eu exclua alguns arquivos em local-src
:
APÓS EXCLUIR LOCAL: local-src
contém localmente ...
c.txt
Como posso usar o rsync de forma a garantir que os arquivos excluídos na origem também sejam excluídos no destino, mas sem excluir outros arquivos no destino. Por exemplo, eu gostaria de ter o seguinte no destino:
APÓS DELETE LOCAL: remote-src
contém remotamente ...
c.txt
d.txt
README.md
Ou seja, a.txt
e b.txt
estão remotamente apagado bem, mas d.txt
e README.txt
são deixados sozinhos.
Existe alguma maneira de conseguir isso com o rsync?
EDIT: O veredicto parece ser que isso pode ser impossível com o rsync. Me perguntaram por que preciso disso, para ilustrar meu caso de uso:
Digamos que eu tenho um servidor web. Nesse servidor web, eu tenho vários diretórios, digamos que eu tenho um diretório A
e um public_html
diretório dos quais meu site é veiculado. Digamos que eu tenho algum processo automatizado que produz arquivos no diretório A
. Eu gostaria de rsync (ou sincronização usando alguma outra ferramenta) os arquivos gerados ou atualizados em A
ao public_html
diretório, sem excluir outros arquivos arbitrários que podem estar dentro public_html
. Eu certamente não quero que o rsync exclua acidentalmente meu site.
Se o rsync não é a ferramenta para este trabalho, alguém sabe como eu posso fazer isso?
rsync
pois não há como saber quais arquivos já estão na pasta remota. Você pode precisar descobrir outra ferramenta.