Estoy tratando de copiar el contenido de una carpeta a otra carpeta en un directorio diferente usando terminal.
¿Alguien podría proporcionarme un ejemplo de la sintaxis de línea de comandos requerida para lograr esto?
command-line
cp
pandisvezia
fuente
fuente
cp -a ~/Downloads/textext/. ~/.config/inkscape/extensions/
-p
marca como para preservar los permisos de archivo y las marcas de tiempo.cp -ap /var/www/original.com/images/. /var/www/new.com/images/
-a
ya implica--preserve=all
, que es más amplio que-p = --preserve=mode,ownership,timestamps
.scp
se usa para copiar a través de una red (a travésssh
) y solo cifra el canal de comunicación, no los archivos en el sistema de archivos de destino.Una alternativa es rsync
Las ventajas de rsync son:
Después de la sincronización inicial, copiará solo los archivos que han cambiado.
Puede usarlo en una red, conveniente para archivos en $ HOME, especialmente archivos de configuración.
fuente
rsync -r source/ destination
debería ser suficiente, no?rync source/ dest
obviamente las personas deberán personalizar el comando rsync para que funcione como lo deseen.Digamos que tiene una carpeta llamada carpeta1 en su
~
, dentro de la carpeta1 hay 1 archivo llamado archivo1 y 2 carpetas llamadas sub1 y sub2, cada una con otros archivos y carpetas dentro de ellas.Para copiar todo el contenido de
~/folder1
a~/new_folder1
usted utilizaríanew_folder1
contendría todos los archivos y carpetas defolder1
.cp
es el comando para copiar usando un terminal, lo-r
hace recursivamente (por lo tanto, el directorio actual + otros directorios dentro del actual)~/folder1
es la carpeta de origen,~/new_folder1
es la carpeta de destino para los archivos / carpetas dentro del origen.fuente
~/new_folder1/folder1
lugar de copiar el contenido.cp -r ~/folder1/* ~/new_folder1
[root@ home]# mkdir food [root@ home]# cd food/ [root@ food]# mkdir .fruit [root@ food]# mkdir veggies [root@ food]# touch veggies/carrots [root@ food]# touch .fruit/apple [root@ food]# ls * carrots [root@ food]#
Consulte este http://www.cyberciti.biz/faq/copy-folder-linux-command-line/ para obtener más información sobre la copia de la carpeta. Espero que esto ayude.
cp
es un comando de Linux para copiar archivos y directorios. La sintaxis es la siguiente:En este ejemplo, copie la
/home/vivek/letters
carpeta y todos sus archivos al/usb/backup
directorio:Dónde,
-a
: Preserve los atributos especificados, como el directorio, el modo de archivo, la propiedad, las marcas de tiempo, si es posible, atributos adicionales: contexto, enlaces, xattr, todos.-v
: Explique lo que se está haciendo.-r
: Copie directorios de forma recursiva. EjemploCopie una carpeta llamada / tmp / conf en / tmp / backup:
fuente
Ejemplo simple.
Copie el directorio dir_1 y su contenido (_files_) en el directorio dir_2 :
Copie el contenido (_files_) solo de dir_1 en el directorio dir_2 :
_files_
es un marcador de posición para los archivos reales ubicados en el directorio.fuente
Si hay dos carpetas: (con permiso de escritura)
Si está dentro de la carpeta llamada PORTAL donde desea copiar todo el contenido de otra carpeta, diga DATOS al mismo nivel, entonces lo hará
vimal@vimal-D3H:/var/www/html/PORTAL$ cp -a ../DATA/. .
Tienes que notar 2 puntos. El último punto dice copiar aquí en la carpeta actual
y
uno siguiente / DATOS /. dice que todos los CONTENIDOS dentro de la carpeta DATA se copiarán, y no la carpeta DATA en sí.
Si elimina este "." de / DATA /
entonces toda la carpeta DATA se copiará dentro del PORTAL (desde donde está haciendo frente).
fuente