¿Cómo usar `rsync -R` con múltiples subdirectorios o instalar -D con múltiples archivos?

¿Cómo usar `rsync -R` con múltiples subdirectorios o instalar -D con múltiples archivos?

¿Es posible rsynccopiar varios archivos de un directorio de origen a un directorio de destino con varios subdirectorios que no existen? ¿O usarlo install -Dcon varios archivos en un directorio que no existe?

También miré cp --parentspero usé el nombre del directorio de origen. ¿Es posible cppoder seleccionar un directorio de destino que no existe y copiar todos los archivos en él una vez creado?

Tengo esta pregunta:Copie un archivo a un directorio que no existe con un solo comando (Linux) Fusionarse con:¿Cómo puedo copiar un archivo y crear los directorios de destino al mismo tiempo?

Pero las soluciones para copiar un archivo, miro algo como:

cp /etc/*.conf ~/mytest/ 

donde mytest no existe y /etc/*.confes más de un archivo. ¿Es posible con cpy con un solo comando es mejor?

Respuesta1

Pruebe con rsyncel comando:

rsync -av /etc/*.conf ~/mytest

En general puedes usar

rsync -av In/*conf Out/NewDir

La situación anterior es:

In
├── d1.conf
├── d2.conf
├── d3.txt
├── Sub_In_1
└── Sub_In_2.conf
    └── SubIn2.Files

Out
└── Out_OldFiles

Después del comando será

Out
├── NewDir
│   ├── d1.conf
│   ├── d2.conf
│   └── Sub_In_2.conf
│       └── SubIn2.Files
└── Out_OldFiles

En este caso, selecciona no sólo los archivos comunes *.confsino incluso el directorio Sub_In_2.conf. Copiará toda la selección (archivos y directorio) en un directorio recién creado NewDirdebajo del Outdirectorio.

La opción -aincluye incluso el -r (recurrir a directorios)

  -a, --archive               archive mode; equals -rlptgoD (no -H,-A,-X)

Notas

  • La rsyncopción recursiva es-r(y no-R).
  • En cp-r y -R corresponden a la misma opción.
  • La opción -vno es necesaria, sólo proporciona información más.
  • Con rsyncusted se puede utilizar incluso entre 2 computadoras diferentes usando host1para el host de origen y host2para el host de destino.

El último comando es

rsync  -av host1:InputDir host2:OutputDir/NewDirThatDidNotExists

información relacionada