GNU/Linux >> Tutoriales Linux >  >> Linux

Cómo copiar archivos y directorios en la terminal de Linux

Duplicar y copiar documentos y registros es posiblemente la tarea más ampliamente reconocida y utilizada que realizará cuando trabaje con la línea de comandos de Linux. En Linux, hay algunas órdenes para duplicar documentos, las órdenes cp y rsync son las más conocidas.

La mayoría de los usuarios de Linux utilizan con frecuencia el comando cp al copiar archivos y el comando rsync al copiar directorios.

Antes de empezar

Para poder copiar archivos y directorios, debe tener al menos permisos de lectura en los archivos de origen y permisos de escritura en los directorios de destino.

Copiar archivos con el comando cp

El comando cp es una utilidad de línea de comandos para copiar archivos y directorios en un sistema Linux de una ubicación a otra en la misma máquina.

El caso de uso más simple es copiar archivos en el directorio de trabajo actual. Por ejemplo, para copiar un archivo llamado file.txt en el directorio actual como file_backup.txt, ejecuta el siguiente comando:

cp file.txt file_backup.txt 

Si el archivo de destino existe, se sobrescribirán los archivos con el mismo nombre y extensión. Para solicitar confirmación, utilice las opciones -i .

cp -i file.txt file_backup.txt 

Al usar el comando cp para copiar archivos, los nuevos archivos serán propiedad del usuario que ejecuta el comando. Usa la opción -p para preservar el modo de archivo, la propiedad y las marcas de tiempo:

cp -p file.txt file_backup.txt 

Otra opción que podría ser útil es -v . Al usar esta opción el comando imprimirá lo que se está haciendo:

cp -v file.txt file_backup.txt 
'file.txt' -> 'file_backup.txt' 

Copiar archivos a otro directorio

Para copiar un archivo a otro directorio, debe especificar una ruta absoluta o relativa al directorio de destino. En el siguiente ejemplo, copiamos el archivo file.txt al directorio /backup :

cp file.txt /backup 

Al especificar solo el nombre del directorio como destino, el archivo copiado tendrá el mismo nombre que el archivo original.

Si desea copiar un archivo con un nombre diferente, debe especificar el nombre de archivo deseado:

cp file.txt /backup/file_baru.txt 

El comando anterior copiará el archivo en el directorio especificado como file_baru.txt .

Copiar varios archivos

También es posible copiar varios archivos a la vez especificando los nombres de los archivos seguidos del directorio de destino:

cp file.txt file1.txt file2.txt directory 

Al copiar varios archivos, el destino debe ser un directorio.

El comando cp también le permite usar la coincidencia de patrones. Por ejemplo, para copiar todos los archivos png del directorio actual al directorio /backup que usarás:

cp *.png /backup 

Cómo copiar un directorio en Linux con el comando cp

Para copiar un directorio, incluidos todos los archivos y subdirectorios, use la opción -R. En el siguiente ejemplo copiamos el directorio ~/Pictures al directorio ~/Pictures_backup :

cp -R Pictures Pictures_backup 

El comando anterior creará un directorio de destino y copiará recursivamente todos los archivos y subdirectorios desde el origen al directorio de destino.

Las opciones utilizadas al copiar archivos también se pueden utilizar al copiar directorios. La principal diferencia es que al copiar directorios necesita usar las opciones -R .

Cómo copiar archivos y directorios en Linux con el comando rsync

Rsync es una utilidad de línea de comandos rápida y versátil. Rsync sincroniza archivos y directorios entre dos ubicaciones. Rsync se puede usar para copiar archivos en una ubicación local o en una ubicación remota.

Rsync proporciona una serie de opciones que controlan todos los aspectos de su comportamiento. Las opciones más utilizadas son -a que copiará directorios recursivamente, transferirá dispositivos personalizados y bloqueará, conservará enlaces simbólicos, tiempos de modificación, grupos, propiedad y permisos de archivos.

Para copiar un archivo de una ubicación a otra, puede usar el siguiente comando:

rsync -a file.txt file_backup.txt 

Si el archivo de destino existe, rsync lo sobrescribirá.

Puede usar el mismo comando anterior para copiar directorios con rsync:

rsync -a / var / www / public_html / / var / www / public_html_backup / 

Tenga en cuenta que Rsync considera barras inclinadas / al final de la fuente con un concepto diferente. Si agrega una barra inclinada al final del directorio de origen, solo copiará el contenido de el directorio al directorio de destino. Cuando se elimine la barra inclinada final, rsync copiará el directorio origen en el directorio de destino.

Conclusión

En esta guía, hemos aprendido cómo copiar archivos y directorios en sistemas basados ​​en Linux y Unix utilizando las utilidades cp y rsync.

Cómo instalar y configurar Mono en Rocky Linux 8 y CentOS 8


Linux
  1. Copiar archivos en la terminal de Linux

  2. Una manera fácil de ocultar archivos y directorios en Linux

  3. Cómo eliminar archivos y directorios en Linux desde la línea de comandos

  4. Cómo extraer archivos .gz y .tar.gz en Linux

  5. Cómo copiar/mover archivos y directorios en Linux con los comandos “cp” y “mv”

Cómo usar el comando cp para copiar archivos y directorios

Cómo hacer una copia de seguridad y restaurar el historial de la terminal de Linux

Todo sobre archivos tar y cómo tar, untar archivos en Linux usando Terminal

Cómo ver y crear archivos y directorios ocultos en Linux

Cómo cambiar el nombre de archivos y directorios en Linux

Cómo eliminar archivos y directorios en la terminal de Linux