He leído estos hilos:
- rsync --delete --files-from = list / dest / no elimina archivos no deseados
- ¿Eliminar archivos extraños del directorio de destino a través de rsync?
Pero, por lo que puedo decir (tal vez me estoy perdiendo algo), no cubren la siguiente pregunta:
¿Cómo solicita rsync
copiar archivos y eliminar aquellos en el lado receptor que no existen en el lado emisor, con excepciones? (por ejemplo, no elimine un repositorio mercurial .hg
en el lado receptor, incluso si no hay un repositorio en el lado emisor).
¿Una posibilidad?
Tomando prestado de la respuesta de @Richard Holloway a continuación. Digamos que tengo la siguiente línea:
rsync -av --exclude=dont_delete_me --delete /sending/path /receiving/path
Por lo que yo entiendo, esta línea haría rsync
eliminar todo en la ruta de recepción que no existe en la ruta de envío, excepto aquellas cosas que coinciden dont_delete_me
. Mi pregunta ahora es: ¿rsync mantendría los archivos en el lado receptor que coinciden dont_delete_me
incluso si nada en el lado emisor coincide dont_delete_me
?
rsync -av --exclude=dont_delete_me --delete /sending/path /receiving/path
¿norsync
eliminaría todo en la ruta de recepción que no existe en la ruta de envío, excepto las cosas que coincidendont_delete_me
? Lo más importante, ¿rsync
mantendría las cosas en el lado receptor igualadasdont_delete_me
incluso si nada en el lado emisor coincidedont_delete_me
? Si ese es el caso, creo que esa es la única línea que necesito, ¿verdad?