cp es una orden Unix, sirve para copiar archivos o directorios. Proviene de la palabra inglesa copy, en español copiar.
Si el archivo destino existe lo sobreescribe y realiza la copia sin comentario ni advertencia. Su equivalente en DOS es copy
Sintaxis:
cp [Opciones] [Origen] [Destino]
cp [Opciones] [Orígenes] [Directorio]
Opciones (obtenidas con cp –help en la terminal):
Los argumentos obligatorios para las opciones largas son también obligatorios
para las opciones cortas.
-a, --archive lo mismo que -dpR
--backup[=CONTROL] crea una copia de seguridad de cada archivo
de destino que exista
-b como --backup pero no acepta ningún argumento
--copy-contents copia el contenido de los archivos especiales
cuando opera recursivamente
-d lo mismo que --no-dereference --preserve=link
-f, --force si un archivo de destino no puede abrirse,
eliminar el archivo e intentar de nuevo
-i, --interactive preguntar antes de sobreescribir
-H seguir los enlaces simbólicos en ORIGEN
-l, --link enlazar archivos en vez de copiar
-L, --dereference siempre seguir enlaces simbólicos en SOURCE
-P, --no-dereference no seguir enlaces simbólicos en SOURCE
-p igual que --preserve=mode,ownership,timestamps
--preserve[=LISTA_ATR] preserva los atributos especificados (por defecto:
mode,ownership,timestamps), y si es posible
atributos adicionales: context, links, all
--no-preserve=LISTA_ATTR no conserva los atributos especificados
--parents añade el directorio de origen a DIRECTORIO
-R, -r, --recursive copia recursivamente, los no directorios como
ficheros
--remove-destination borra cada fichero de destino que exista antes
de intentar abrirlo (compárese con --force).
--sparse=CUANDO controla la creación de archivos dispersos
--strip-trailing-slashes elimina cualquier barra (/) final de cada argumento
ORIGEN
-s, --symbolic-link crea enlaces simbólicos en lugar de copiarlos
-S, --suffix=SUFIJO reemplaza el sufijo habitual de las salvaguardas
--target-directory=DIRECTORIO mueve todos los argumentos ORIGEN al
DIRECTORIO
-T, --no-target-directory trata DEST como un archivo normal.
-u, --update copia solamente cuando el fichero ORIGEN es
más moderno que el fichero de destino,
o cuando falta el fichero de destino
-v, --verbose da detalles sobre lo que se va haciendo
-x, --one-file-system permanece en este sistema de ficheros
--help muestra esta ayuda y finaliza
--version informa de la versión y finaliza
Por omisión, los ficheros ORIGEN `sparse' se detectan mediante una simple
heurística y los correspondientes ficheros DESTINO se crean también `sparse'.
Este es el comportamiento con --sparse=auto. Al especificar --sparse=always se
crea un fichero DESTINO `sparse' cuando el fichero ORIGEN contiene una sucesión
de bytes cero suficientemente larga.
Utilice --sparse=never para inhibir la creación de ficheros `sparse'.
El sufijo de respaldo es `~', a menos que se establezca con --suffix o con
SIMPLE_BACKUP_SUFFIX. El método de control de versión se puede seleccionar
con la opción --backup o a través de la variable de entorno VERSION_CONTROL.
Estos son los valores:
none, off nunca realiza copias de seguridad (incluso si se da la
opción --backup)
numbered, t crea copias de seguridad numeradas
existing, nil numeradas si existen copias de seguridad numeradas,
simples en caso contrario
simple, never siempre crea copias de seguridad simples
Como caso especial, cp crea una copia de seguridad de ORIGEN cuando se utilizan
las opciones `force' y `backup', y ORIGEN y DESTINO tienen el mismo nombre para
un nombre de fichero regular existente.
La condición para copiar un archivo y/o directorio es que el destino exista de antemano.
Copiar un archivo de un lugar a otro:
Sintaxis:
cp [Origen] [Destino]
Ejemplo.- Copiar el archivo cp.pdf en el escritorio a documentos.
cp Desktop/cp.pdf Documents
Copiar varios archivos a un directorio:
Sintaxis:
cp [Origenes] [Directorio]
Por ejemplo, tengo varios archivos en el escritorio que quiero copiar en un solo paso a documentos. Sus nombres son: cp.txt, man-cp.pdf, cp.png. En la terminal escribo:
cp Desktop/cp.txt Desktop/man-cp.pdf Desktop/cp.png Documents
Copiar un directorio completo. La opción -R, -r, --recursive hacen el trabajo y son la misma cosa.
Sintaxis:
cp -R [Origen] [Destino]
cp -r [Origen] [Destino]
cp --recursive [Origen] [Destino]
Ejemplo.- Copiar todo los archivos dentro de la carpeta cp de documentos al directorio cp del escritorio:
cd -r Documents/cp Desktop/cp
El comando cp cuando copia archivos de un lugar a otro y en el destino se encuentra un archivo con el mismo nombre lo sobreescribe. Para que pregunte antes de borrar el anterior y sustituirlo por el nuevo se hace uso del comando -i o --interactive
Sintaxis:
cp -i [Origen] [Destino]
cp --interactive [Origen] [Destino]
Ejemplo.- Tengo en el escritorio un archivo llamado cp.pdf pero no recuerdo si lo tango ya en documentos. Para que me pregunte si lo sobreescribe, tecleo en la shell:
cp -i Desktop/cp.pdf Documents
cp --interactive Desktop/cp.pdf Documents
La opción -f o --force se asegura que el archivo se copie correctamente, en caso contrario lo elimina y lo intenta de nuevo.
Sintaxis:
cp -f [Origen] [Destino]
cp --force [Origen] [Destino]
Ejemplo:
cp -f Desktop/cp.txt Documents
cp --force Desktop/cp.txt Documents
Con * selecciona todos los archivos en un directorio
Sintaxis:
cp [Origen]/* [Destino]
Ejemplo:
cp Desktop/cp/* Documents/copy
Esta orden copio todos los archivos que hay dentro de cp en el escritorio a la carpeta copy de documentos.
La opción -a es equivalente a -dpR. No sigue los enlaces simbólicos, conserva los atributos de mode, ownership, timestamps, y copia recursivamente los archivos.
Sintaxis:
cp -a [Origen] [Destino]
Ejemplo:
cp -a Desktop/copy Documents/cp
http://es.wikipedia.org/wiki/Cp_(Unix)
http://iie.fing.edu.uy/~vagonbar/unixbas/sisarch2.htm
http://html.rincondelvago.com/linux_12.html
La ayuda obtenida con los comandos:
cp --help
man -t cp | ps2pdf - > Desktop/man-cp.pdf
carlosruizortega dicho:
on Mayo 2, 2009 at 6:53 pm
Holap:
A veces hay carpetas que están “seteadas” de tal manera que sólo permiten al Super User copiar archivos en ellas… en ese caso, sólo basta hacer:
sudo cp [nombre_archivo] [carpeta]
Saludooos
travesuras dicho:
on Mayo 3, 2009 at 6:18 pm
Hola, cuanto gusto verte de nuevo
Ese método lo empleo para copiar las imágenes del grub en su lugar.
Saludos
luis alberto dicho:
on Julio 4, 2009 at 2:04 pm
por favor estoy en stand by mental, necesito q me brinden un ejemplo de la orden cp, pero realizado en GEDIT de UBUNTO. les agredeceria muchisimo
Cristina dicho:
on Julio 29, 2009 at 10:45 am
Como tu mensaje ya tiene casi un mes y como que no entiendo lo que pides, me tomo hasta mañana para responderte algo que te sirva.