Comandos LinuxExplicados en español
/
Ficha03 / 104
Categoría
Archivos
Ejemplos
6
Ver también
mv · mkdir · ls · rm

cp

copy (copiar)

Copia archivos o carpetas de un lugar a otro sin borrar el original.

Sirve para duplicar un archivo o una carpeta en otra ubicación. Lo usas para respaldar algo antes de modificarlo, o para llevar una copia a otra carpeta sin tocar la original.

Sintaxiscp [opciones] ORIGEN DESTINO
Precaución

Si el destino ya existe, cp lo sobrescribe sin avisar y pierdes su contenido. Usa -i para que pregunte antes, o -n para que nunca toque lo que ya existe.

§ 1

Despiece

6 ejemplos
Copiar un archivo con otro nombre

Copiar un archivo con otro nombre

3 piezas
Lámina01 / 06
Comandocp notas.txt notas_copia.txt
Piezas3
Escala1:1
N.ºPiezaTipoQué hace
1cpComandoEl comando para copiar.
2notas.txtArgumentoEl archivo original que quieres duplicar.
3notas_copia.txtArgumentoEl nombre que tendrá la copia.
Resultado

Crea notas_copia.txt con el mismo contenido y deja intacto el original notas.txt.

Copiar un archivo a otra carpeta

3 piezas
Lámina02 / 06
Comandocp notas.txt /tmp/
Piezas3
Escala1:1
N.ºPiezaTipoQué hace
1cpComandoEl comando para copiar.
2notas.txtArgumentoEl archivo que quieres duplicar.
3/tmp/ArgumentoLa carpeta destino, que ya existe en el sistema.
Resultado

Deja una copia de notas.txt dentro de /tmp conservando el mismo nombre.

Copiar una carpeta completa

4 piezas
Lámina03 / 06
Comandocp -r proyecto/ respaldo-proyecto/
Piezas4
Escala1:1
N.ºPiezaTipoQué hace
1cpComandoEl comando para copiar.
2-rOpciónRecursivo: copia la carpeta y todo lo que tiene dentro.
3proyecto/ArgumentoLa carpeta que quieres duplicar.
4respaldo-proyecto/ArgumentoEl nombre que tendrá la copia de la carpeta.
Resultado

Si respaldo-proyecto no existe, lo crea como copia completa de proyecto. Si ya existía, la copia queda dentro: respaldo-proyecto/proyecto.

Preguntar antes de sobrescribir

4 piezas
Lámina04 / 06
Comandocp -i notas.txt /tmp/notas.txt
Piezas4
Escala1:1
N.ºPiezaTipoQué hace
1cpComandoEl comando para copiar.
2-iOpciónInteractive: avisa y pregunta antes de sobrescribir.
3notas.txtArgumentoEl archivo que quieres copiar.
4/tmp/notas.txtArgumentoEl destino exacto de la copia.
Resultado

Si /tmp/notas.txt ya existe, cp pregunta si de verdad quieres sobrescribirlo antes de hacerlo.

Copiar sin dejar que sobrescriba

4 piezas
Lámina05 / 06
Comandocp -n datos.csv datos.bak
Piezas4
Escala1:1
N.ºPiezaTipoQué hace
1cpComandoEl comando para copiar.
2-nOpciónNo clobber: no sobrescribe archivos que ya existen.
3datos.csvArgumentoEl archivo que quieres copiar.
4datos.bakArgumentoEl archivo destino de la copia.
Resultado

Copia datos.csv a datos.bak solo si datos.bak no existe todavía; si existe, lo deja intacto.

Guardar la fecha original al copiar

4 piezas
Lámina06 / 06
Comandocp -p foto.jpg /tmp/foto.jpg
Piezas4
Escala1:1
N.ºPiezaTipoQué hace
1cpComandoEl comando para copiar.
2-pOpciónPreserve: conserva permisos y fechas del original (y el dueño, si eres root).
3foto.jpgArgumentoEl archivo original.
4/tmp/foto.jpgArgumentoEl destino de la copia en la carpeta temporal.
Resultado

La copia conserva la fecha de modificación y los permisos del original, en vez de quedar con la fecha de hoy.

§ 2

Opciones

Las que sí vas a usar
OpciónQué hace
-r--recursiveCopia una carpeta y todo lo que tiene dentro.
-i--interactivePregunta antes de sobrescribir un archivo que ya existe.
-n--no-clobberNunca sobrescribe: si el archivo ya existe en el destino, lo deja como está.
-v--verboseMuestra cada archivo que va copiando.
-u--updateSolo copia si el origen es más nuevo que el destino o si el destino no existe.
-p--preserveConserva los permisos y las fechas del original. El dueño solo se conserva si copias como root.
§ 3

Fallas comunes

FallaRemedio
Copiar una carpeta sin -r y ver cp: -r not specified; omitting directory.Las carpetas necesitan la opción recursiva. Usa cp -r carpeta destino para copiar todo su contenido.
Sobrescribir un archivo por accidente porque el destino ya existía.Usa -i para que cp pregunte antes de sobrescribir, o -n para que jamás toque un archivo existente.
Pensar que cp crea la carpeta destino si no existe.cp no crea carpetas. cp notas.txt respaldo/ falla si respaldo no existe, y sin la diagonal crea un archivo llamado respaldo. Crea primero la carpeta con mkdir -p y luego copia.
Poner el destino antes que el origen.El orden siempre es cp ORIGEN DESTINO. Si lo escribes al revés y los dos archivos existen, cp no da error: copia el viejo encima de tu original y lo pierdes.
§ 4

Preguntas frecuentes

¿Cómo copio una carpeta con todo su contenido?
Usa -r para que sea recursiva: cp -r carpeta destino. Sin -r, cp solo copia archivos y se salta las carpetas con un mensaje de advertencia.
¿Cuál es la diferencia entre cp y mv?
cp duplica: deja el archivo en el origen y crea una copia en el destino. mv mueve: saca el archivo del origen y lo deja solo en el destino. Para respaldar algo, usa cp.
¿Cómo copio un archivo sin sobrescribir el que ya existe?
Agrega -n: cp -n origen destino. Si ya existe un archivo con el mismo nombre en el destino, cp lo deja intacto y no copia.
¿Qué hace cp -i?
La opción interactive hace que cp pregunte antes de sobrescribir un archivo. Respondes y para sobrescribir (s si tu sistema está en español) o n para dejarlo como está. Evita que pierdas archivos por error.
¿Cómo paso un archivo a otra carpeta sin borrarlo de la original?
Usa cp con el origen y la carpeta destino: cp archivo /ruta/destino/. Queda el original donde estaba y se crea una copia en el destino. Si prefieres moverlo y eliminar el original, usa mv.
§ 5

Ver también