Provided by:
manpages-es_1.55-8_all 
NOMBRE
cp - copia ficheros y directorios
SINOPSIS
cp [opciones] fichero camino
cp [opciones] fichero... directorio
Opciones de POSIX: [-fipRr]
Opciones de GNU (en la forma más corta): [-abdfilprsuvxPR] [-S SUFIJO]
[-V {numbered,existing,simple}] [--sparse=CUANDO] [--help] [--version]
[--]
DESCRIPCIÓN
cp copia ficheros (o, opcionalmente, directorios). Uno puede bien
copiar un fichero a un destino dado, o copiar arbitrariamente varios
ficheros a un directorio destino.
Si el último argumento se refiere a un directorio existente, cp copia
cada fichero fuente a ese directorio (manteniendo el mismo nombre). En
otro caso, si sólo se dan dos ficheros, copia el primero sobre el
segundo. Es un error que el último argumento no sea un directorio y se
den varios argumentos no opciones.
(Así por ejemplo, ‘cp -r /a /b’ copiará /a a /b/a y /a/x a /b/a/x en
caso de que /b ya exista, pero copiará /a a /b y /a/x a /b/x si no
existía /b con anterioridad.)
Los permisos de los ficheros y directorios creados serán los mismos que
los de los ficheros originales, aplicándoles la operación de bits Y
sobre 0777, y modificados por la umask del usuario (a menos que se haya
especificado la opción -p). (Pero durante la copia recursiva de
directorios, a los permisos finales de los directorios recién creados
se les aplicará la operación de bits O con S_IRWXU (0777), de forma que
se permita al proceso leer, escribir y pasar por el directorio recién
creado.)
No se hace nada cuando se copie un fichero a sí mismo (excepto
posiblemente producir un mensaje de error). Cuando se copie a un
fichero diferente que ya exista, se abrirá empleando la llamada
‘open(path, O_WRONLY | O_TRUNC)’. Cuando se copia a un fichero nuevo
se crea empleando la llamada ‘open(path, O_WRONLY | O_CREAT, mode)’.
Si esto falla, el fichero existía y se dio la opción -f, entonces cp
intenta borrar (desenlazar) el fichero existente y, si esto tiene
éxito, procede como para un fichero nuevo.
OPCIONES DE POSIX
POSIX reconoce cuatro opciones y media:
-f Borrar ficheros destino existentes si se requiere. (Vea más
arriba.)
-i Pregunta si sobreescribir ficheros regulares destino existentes.
(Escribe una pregunta en stderr y lee la respuesta desde stdin.
Sólo copia tras una respuesta afirmativa.)
-p Preserva los permisos, el propietario y el grupo (incluyendo los
bits SUID y SGID) de los ficheros originales, más el tiempo de
última modificación y el de último acceso. En caso de que la
duplicación del propietario o grupo falle, se limpian los bits
setuid y setgid. (Observe que después de todo el fuente y la
copia pueden muy bien tener tiempos de último acceso diferentes,
puesto que la operación de copia es un acceso al fichero
fuente.)
-R Copia directorios recursivamente y hace lo correcto cuando se
encuentran objetos distintos de ficheros ordinarios o
directorios. (Así, la copia de un FIFO un un fichero especial
es un FIFO o un fichero especial.)
-r Copia directorios recursivamente y hace algo sin especificar con
objetos distintos de ficheros ordinarios o directorios. (Así,
está permitido, de hecho recomendado, que la opción -r sea un
sinónimo de -R. Sin embargo, un comportamiento tonto, como el de
la presente versión de GNU de cp (vea más abajo) no está
prohibido.)
DETALLES DE GNU
Generalmente, los ficheros se escriben justo cuando se leen. Para
excepciones, vea la opción --sparse más abajo.
De forma predeterminada, ‘cp’ no copia directorios (vea -r arriba).
cp generalmente rehúye copiar un fichero sobre sí mismo, con la
siguiente excepción: si se especifica --force --backup con fuente y
dest idénticos, y se refiere a un fichero regular, cp creará un fichero
de respaldo, bien regular o numerado, como se especifique de las formas
usuales. Esto es útil cuando uno quiere simplemente construir un
fichero de respaldo de un fichero existente antes de cambiarlo.
OPCIONES DE GNU
-a, --archive
Preserva tanto como sea posible la estructura y atributos de los
ficheros originales en la copia (pero no preserva la estructura
de directorio). Equivalente a -dpR.
-d, --no-dereference
Copia los enlaces simbólicos como tales en lugar de copiar los
ficheros a los que apunten y preserva las relaciones de los
enlaces duros entre ficheros fuente en las copias.
-f, --force
Elimina los ficheros de destino que ya existan sin pedir
confirmación.
-i, --interactive
Pregunta si sobreescribir ficheros de destino regulares
existentes.
-l, --link
En vez hacer copias de ficheros que no son directorios, hace
enlaces duros.
-p, --preserve
Preserva los permisos, el propietario, el grupo y los tiempos de
los ficheros originales.
-P, --parents
Forma el nombre de cada fichero de destino añadiendo al
directorio destino una barra inclinada y el nombre especificado
del fichero origen. El último argumento dado a cp debe ser el
nombre de un directorio existente. Por ejemplo, la orden
cp --parents a/b/c dir_existente
copia el fichero ‘a/b/c’ a ‘dir_existente/a/b/c’, creando
cualquier directorio intermedio que falte.
-r Copia directorios recursivamente, copiando cualquier fichero no
directorio ni enlace simbólico (esto es, FIFOs y ficheros
especiales) como si fuera un fichero regular. Esto significa
intentar leer los datos de cada fichero fuente y escribirlos en
el destino. Así, con esta opción, ‘cp’ puede muy bien colgarse
indefinidamente leyendo un FIFO o /dev/tty. (Esto es un fallo.
Significa que uno tiene que evitar -r y debe emplear en su lugar
-R si no sabe qué hay en el árbol de directorios que se está
copiando. Abrir un fichero de dispositivo desconocido, digamos
un escáner, tiene efectos desconocidos sobre el hardware.)
-R, --recursive
Copia directorios recursivamente, preservando los no-directorios
(vea -r justo arriba).
--sparse=CUANDO
Un ‘fichero disperso’ contiene ‘agujeros’: secuencias de bytes
cero que no ocupan ningún bloque físico de disco; la llamada al
sistema ‘read()’ las lee como ceros. Esto puede tanto salvar un
considerable espacio de disco como incrementar la velocidad,
puesto que muchos ficheros binarios contienen montones de bytes
cero consecutivos. Por defecto, cp detecta agujeros en los
ficheros fuente de entrada a partir de una heurística basta y
construye los ficheros de salida correspondientes dispersos
también.
El valor CUANDO puede ser uno de los siguientes:
auto El comportamiento predeterminado; el fichero de salida es
disperso si el de entrada lo es.
always Siempre construye disperso el fichero de salida. Esto es
útil cuando el fichero de entrada reside en un sistema de
ficheros que no admite ficheros dispersos, pero el de
salida está en un sistema de ficheros que sí.
never Nunca construye disperso el fichero de salida. Si Ud.
encuentra una aplicación para esta opción, háganosla
saber.
-s, --symbolic-link
Hace enlaces simbólicos en vez de copias de ficheros que no sean
directorios. Todos los nombres de ficheros origen deben ser
absolutos (empezar por ‘/’) a menos que los ficheros de destino
estén en el directorio de trabajo. Esta opción simplemente
produce un mensaje de error en sistemas que no admitan enlaces
simbólicos.
-u, --update
No copia un fichero no-directorio si el destino ya existe y
tiene el mismo tiempo de modificación o más reciente.
-v, --verbose
Muestra el nombre de cada fichero antes de copiarlo.
-x, --one-file-system
Se salta subdirectorios que estén en sistemas de ficheros
diferentes de aquél en el que empezó la copia.
OPCIONES DE RESPALDO DE GNU
Las versiones de GNU de programas como cp, mv, ln, install y patch
crearán una copia de seguridad de ficheros que estén a punto de ser
sobreescritos, modificados o destruidos. Que se deseen ficheros de
respaldo se indica mediante la opción -b. Cómo deberían nombrarse se
especifica con la opción -V. En el caso de que el nombre del fichero de
respaldo se dé mediante el nombre del fichero extendido con un sufijo,
este sufijo se especifica con la opción -S.
-b, --backup
Hace copias de respaldo de ficheros que están a punto de ser
sobreescritos o borrados.
-S SUFIJO, --suffix=SUFIJO
Añade SUFIJO a cada fichero de respaldo creado. Si no se
especifica esta opción, se emplea el valor de la variable de
entorno SIMPLE_BACKUP_SUFFIX. Y si SIMPLE_BACKUP_SUFFIX no está
definida, el valor predeterminado es ‘~’.
-V MTODO, --version-control=MTODO
Especifica cómo se nombran los ficheros de respaldo. El
argumento MTODO puede ser ‘numbered’ (o ‘t’), ‘existing’ (o
‘nil’), o ‘never’ (o ‘simple’). Si esta opción no se
especifica, se emplea el valor de la variable de entorno
VERSION_CONTROL. Y si VERSION_CONTROL no está definida, el tipo
predeterminado de respaldo es ‘existing’.
Esta opción corresponde a la variable de Emacs ‘version-
control’. Los MTODOs válidos son (se aceptan abreviaciones
inambiguas):
t, numbered
Siempre hace respaldos numerados.
nil, existing
Hace respaldos numerados de ficheros que ya los tengan,
respaldos ‘simple’s de los otros.
never, simple
Siempre hace respaldos simples.
OPCIONES ESTÁNDARES DE GNU
--help Muestra un mensaje en la salida estándar sobre el modo de empleo
y acaba con código de éxito.
--version
Muestra en la salida estándar información sobre la versión y
luego acaba con código de éxito.
-- Termina la lista de opciones.
ENTORNO
Las variables LANG, LC_ALL, LC_COLLATE, LC_CTYPE y LC_MESSAGES tienen
los significados usuales. Para el sistema de versiones de GNU, las
variables SIMPLE_BACKUP_SUFFIX y VERSION_CONTROL controlan la
nomenclatura de los ficheros de respaldo, como se ha descrito
anteriormente.
CONFORME A
POSIX 1003.2
OBSERVACIONES
Esta página describe cp según se encuentra en el paquete fileutils-4.0;
otras versiones pueden diferir un poco. Envíe por correo electrónico
correcciones y adiciones a la dirección aeb@cwi.nl. Informe de fallos
en el programa a fileutils-bugs@gnu.ai.mit.edu.