Opciones del comando cp: copiar de todo

El hecho de copiar archivos nos sirve para tener un respaldo de los mismos. A la hora de hacer backups de nuestra información o al duplicar archivos de configuración antes de hacer cambios, hay un par de opciones del comando cp que nos resultarán muy útiles. En este post hablaremos sobre tres de ellas: -r, -i, y -u. ¡Comencemos!

Opciones del comando cp

Para empezar, hagamos una lista de los escenarios posibles en una copia del tipo

cp A B

donde A y B pueden ser archivos o directorios, y A debe existir previo a la operación.

  1. Si A es un archivo y B no existe, se creará una copia de A con el nombre B.
  2. Cuando A sea un archivo y B exista (y también sea un archivo), se sobreescribirán sus contenidos con los de A.
  3. Si A es un archivo y B un directorio, se creará A dentro de B.
  4. Si A es un directorio y B también, será necesario utilizar hacer cp -r A B para copiar recursivamente A y sus contenidos en B. De otra forma, la copia fallará.

Precauciones

En primer lugar, consideremos el punto 2 de arriba. Nos puede interesar hacer una copia si el archivo fuente es más reciente que el destino. Es decir, que el primero haya sido modificado luego que el segundo. Por eso, es una buena idea utilizar la opción -u. También puede suceder que antes de intentar sobreescribir se nos pida confirmación. La opción -i es la que nos permite acceder a esta funcionalidad.

A continuación, crearemos un archivo llamado archivo1 en el directorio actual:

echo "Soy el archivo1" > archivo1

Hagamos una copia (duplicado) del mismo dentro del subdirectorio dir:

cp archivo1 dir

Posteriormente, modifiquemos dir/archivo1:

echo "Hoy es miércoles" >> dir/archivo1

Y ahora intentemos sobreescribir dir/archivo1 con el archivo del mismo nombre presente en el directorio actual:

cp -u archivo1 dir/archivo1

Como vemos en la Fig. 1, los contenidos de dir/archivo1 no se sobreescriben con los de ./archivo1 ya que la fecha de modificación de este último es anterior a la del primero:

Uso de las opciones del comando cp
Figura 1 – Uso de las opciones del comando cp

Espero que este post les haya resultado útil.

¡Aprovechá la oportunidad de suscribirte al blog para recibir en tu correo el post nuestro de cada día, novedades, y promociones exclusivas!