cp -r sin archivos ocultos


89

Tengo dos directorios y uno está vacío.

El primer directorio tiene muchos subdirectorios con archivos ocultos. Cuando cp -rcontenido del primer directorio al segundo, los archivos ocultos también se copian. ¿Alguna solución para escapar de ellos?


es factible, pero eliminarlos después de la copia podría ser más simple
— Karoly Horvath

6
sí, pero trasladar los archivos ocultos a otras ubicaciones es un peligro para la seguridad en mi caso.
— Rahul

Respuestas:


127

Puedes usar rsync:

rsync -av --exclude=".*" src dest

1
¿Algún gasto general en comparación con cp?
— Rahul

2
@Rahul No se me ocurrió compararlo, pero creo que no debería preocuparse por eso
— Eugene Yarmash

3
¡Funciona genial! ¡Gracias hombre! Solo como información, rsync sería genial cuando el tamaño del archivo es grande, pero igual a cp en el caso de los archivos más pequeños.
— Rahul

26

Tu puedes hacer

cp -r SRC_DIR/* DEST_DIR

para excluir todos los archivos .files y .dirs en el nivel SRC_DIR, pero aún así copiaría los archivos ocultos en el siguiente nivel de subdirectorios.


6
Ese es exactamente el problema .. :)
— Rahul

9
Pero funciona para GIT-Repos, si no desea copiar el índice GIT completo en .git / ...
— Sedat Kilinc

1
Recibí esta respuesta porque esta es la solución que estaba buscando. No quiero excluir a todos los invisibles del árbol, ¡solo a los invisibles en el nivel de la raíz!
— l008com

Otra variante cp SOURCE/[!.]* TARGET.
— Carel

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.