rsync excluir archivos ocultos no funciona!

34

He buscado en todo Internet y todo el mundo sugiere lo mismo: agregar no --exclude=´.*´debería incluir archivos y carpetas ocultos de un rsync. No lo hace. También he intentado agregar una barra oblicua y / o comillas dobles, por ejemplo. --exclude=¨\.*¨Nada parece funcionar. AGH !! Realmente agradecería algo de ayuda.

usuario289455
fuente

Respuestas:

63

Ambas versiones que está mostrando son incorrectas. Necesitas usar comillas dobles.

--exclude=".*"

funciona y excluye archivos y directorios ocultos.

Si solo desea excluir directorios ocultos:

--exclude ".*/"

Lo uso a diario para las copias de seguridad.

Rinzwind
fuente
Sí, eso funcionó, pero solo cuando corté y pegué tu fragmento. Por alguna razón, mi teclado no está configurado para escribir una comilla doble estándar. En cambio, hace esto ¨
user289455
1
Está utilizando un teclado con teclas muertas activas.
Debe
Oh! Eso funcionó también! No sabrías cómo apagar eso, ¿verdad?
user289455
sí ... cambie el teclado a "english (us)";)
Rinzwind
1
@YaroslavNikitenko lo siento. Hay una confusión allí. Debe leer "si SOLO desea excluir directorios ocultos".
Rinzwind
2

Yo uso esta expresión: --exclude=".[!.]*"

Me funciona bien excluyendo archivos y directorios ocultos.

jonathanbell
fuente
0

--exclude="/.*"tu \está apuntando en la dirección equivocada.

rsync -a --exclude="/.*" ./ /path/to/sync
Pantera
fuente
2
No es necesario el / :) no está usando "'s. Si necesitaba un / is debería estar al final para excluir
directorios
0

Abra un archivo de texto exclude_me.txty escriba lo siguiente:.[a-z]*

Luego ejecute lo siguiente:

rsync -avh --exclude-from='exclude_me.txt' /path/of/Source /path/of/Destination
Abel Tom
fuente