Comando cp en Linux

lunes, 10 de enero de 2011

El comando cp en Linux, también conocido como copy, es un comando UNIX que como su propio nombre indica, se utiliza para copiar ficheros. Dado que es uno de los comandos más utilizados en Linux, hoy vamos a explicaros cómo se utiliza.

Al utilizar el comando cp en Linux, los ficheros pueden ser copiados al mismo directorio o por el contrario a un directorio diferente. Si el fichero va a ser copiado al mismo directorio donde existe el fichero original, el nuevo fichero debe tener un nombre diferente. Por el contrario, si el fichero va a ser copiado a otro directorio, el fichero puede tener cualquier nombre. Al ejecutar el comando cp en Linux, el fichero original no cambia.

Si queremos copiar un fichero a otro fichero del mismo directorio utilizando el comando cp en Linux:

cp [opciones] ficheroorigen ficherodestino

Un ejemplo real de uso, podría ser el realizar un backup de un fichero:

cp log.txt log.bak

Si por el contrario queremos copiar un fichero a un directorio utilizando el comando cp en Linux, la sintaxis será la siguiente:

cp [opciones] ficheroorigen directoriodestino

Un ejemplo en el cual pasamos un archivo llamado “log.txt” al directorio /home/usuario/logs/ utilizando el comando cp en Linux, podría ser el siguiente:

cp log.txt /home/usuario/logs/

Si por el contrario queremos copiar varios ficheros (log1.txt, log2.txt y log3.txt) con el comando cp en Linux, habría que hacer lo siguiente:

cp log1.txt log2.txt log3.txt /home/usuario/logs/

En caso de que queramos pasar todos los ficheros que se encuentran dentro de un directorio a otro, haremos lo siguiente:

cp /home/usuario/logs/* /home/usuario/nueva-carpeta-logs

En este último caso, no copiamos el directorio logs, sino todos los ficheros que están dentro del directorio logs. Si por el contrario queremos copiar un directorio entero, la sintaxis es la siguiente:

cp [opciones] –R directorioorigen directoriodestino

Un ejemplo en el cual copiaríamos la carpeta  “logs” (/home/usuario/logs/) en “/home/usuario/pruebas/”sería el siguiente:

cp /home/usuario/logs/ /home/usuario/pruebas/

Como se puede ver, el comando cp en Linux ofrece muchas posibilidades. Hasta ahora hemos visto los comandos más habituales sin introducir las [opciones] o “flags” que hemos explicado en la sintaxis. A continuación veremos los flags más utilizados con el comando cp en Linux:

Backup:
-b
Crea un backup en el destino en el caso en el que exista un archivo llamado igual que el que queremos generar.

Force:
-f
Fuerza el borrado de los archivos destino sin consultar o avisar al usuario.

Interactive:
-i
Informa antes de sobrescribir un archivo en el destino indicado.

Link:
-l
Realiza un link en vez de copiar los ficheros.

Preserve:
-p
Realiza la copia de los ficheros y directorios conservando la fecha de modificación de los archivos y carpetas originales.

Copia recursiva:
-r
Copia de forma recursiva.

Suffix:
-S SUFFIX
Añade la palabra “SUFFIX” (o la palabra que le indiquemos, por ejemplo BACKUP) a los archivos de backup creados con el flag “–b”.

Update:
-u
El comando cp en Linux no copia un archivo o directorio a un destino si este destino tiene la misma fecha de modificación o una fecha de modificación posterior comparándola con el archivo o directorio que queremos mover.

Verbose:
-v
Muestra lo que se está ejecutando.


Con esto finalizamos el manual del comando cp en Linux y algunos de los flags más utilizados con él. Esperamos que este manual sobre cómo funciona el comando cp en Linux os sirva de ayuda a la hora de administrar vuestro Sistema Operativo.

Fuente de apoyo

Artículos relacionados


Comments

4 Responses to “ Comando cp en Linux ”
Post a Comment | Enviar comentarios ( Atom )

Anónimo dijo...

Muy buen manual simplista sobre el comando cp. Me ha valido para utilizar el comando cp con toda su potencia.

Un saludo

28 de marzo de 2012, 13:25
Anónimo dijo...

Muchas gracias. Ha sido de gran ayuda ;)

8 de marzo de 2013, 21:40

Y yo lanzando un cp -a pensando que era la forma recursiva...

30 de julio de 2013, 17:40
Ulises53 dijo...

Si me encuentro situado en el directorio destino, ¿será suficiente mencionar el nombre del fichero de origen? Ejemplo (suponiendo que ya estoy situado en el directorio a donde quiero copiar el fichero junio.txt):

cp /u/respaldo/junio.txt

15 de octubre de 2013, 17:29

Publicar un comentario en la entrada

Deja tu opinión realizando un comentario interesante. Cualquier intento de Spam no será admitido.