¿Es posible rsync
copiar varios archivos de un directorio de origen a un directorio de destino con varios subdirectorios que no existen? ¿O usarlo install -D
con varios archivos en un directorio que no existe?
También miré cp --parents
pero usé el nombre del directorio de origen. ¿Es posible cp
poder 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/*.conf
es más de un archivo. ¿Es posible con cp
y con un solo comando es mejor?
Respuesta1
Pruebe con rsync
el 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 *.conf
sino incluso el directorio Sub_In_2.conf
. Copiará toda la selección (archivos y directorio) en un directorio recién creado NewDir
debajo del Out
directorio.
La opción -a
incluye incluso el -r (recurrir a directorios)
-a, --archive archive mode; equals -rlptgoD (no -H,-A,-X)
Notas
- La
rsync
opción recursiva es-r(y no-R). - En
cp
-r y -R corresponden a la misma opción. - La opción
-v
no es necesaria, sólo proporciona información más. - Con
rsync
usted se puede utilizar incluso entre 2 computadoras diferentes usandohost1
para el host de origen yhost2
para el host de destino.
El último comando es
rsync -av host1:InputDir host2:OutputDir/NewDirThatDidNotExists