Me gustaría usar rsync para ...
- eliminar archivos en el lado receptor que también se eliminaron en el lado emisor
- no elimine otros archivos que están en el directorio rsynced en el lado receptor
Por ejemplo, digamos que tengo un directorio local-src:
ANTES: local-src localmente contiene ...
a.txt
b.txt
c.txt
mi directorio remoto que me gustaría sincronizar con el contenido de local-srcse llama remote-src.
ANTES: remote-src remotamente contiene ...
a.txt
b.txt
c.txt
d.txt
README.md
Digamos que elimino algunos archivos en local-src:
DESPUÉS DE BORRAR LOCAL: local-src localmente contiene ...
c.txt
¿Cómo puedo usar rsync para asegurarme de que los archivos eliminados en el origen también se eliminen en el destino, pero sin eliminar otros archivos en el destino? Por ejemplo, me gustaría tener lo siguiente en el destino:
DESPUÉS DE BORRAR LOCAL: de remote-src forma remota contiene ...
c.txt
d.txt
README.md
Es decir, a.txty b.txtse eliminan de forma remota, así, pero d.txty README.txtse quedan solos.
¿Hay alguna forma de lograr esto con rsync?
EDITAR: El veredicto parece ser que esto podría ser imposible con rsync. Me han preguntado por qué necesito esto, así que para ilustrar mi caso de uso:
Digamos que tengo un servidor web. En ese servidor web, tengo un montón de directorios, digamos que tengo un directorio Ay un public_htmldirectorio desde el que se sirve mi sitio. Digamos que tengo un proceso automatizado que produce archivos en el directorio A. Me gustaría sincronizar (o sincronizar usando alguna otra herramienta) los archivos generados o actualizados en Ael public_htmldirectorio, sin eliminar otros archivos arbitrarios que puedan estar dentro public_html. Ciertamente no quiero que rsync elimine accidentalmente mi sitio web.
Si rsync no es la herramienta para este trabajo, ¿alguien más sabe cómo puedo hacer esto?
rsyncya que no hay forma de saber qué archivos ya están en la carpeta remota. Es posible que necesite encontrar otra herramienta.