mandato cpio

Finalidad

Copia archivos dentro y fuera del almacenamiento de archivado y directorios. Este documento describe el mandato AIX® cpio y el mandato System V cpio .

Sintaxis

cpio -o [ a ] [ c ] [ -E { forzar |ignorar | advertir } ] [ -g ] [ -H hdr ][ -U ] [ v ] [ B | C Valor ] [ -Z ] < NombreArchivo > Salida

cpio -i [ b ] [ c ] [ d ] [ -E { forzar | ignorar | advertir } ] [ f ] [ -H hdr ] [ m ] [ M ] [ r ] [ s ] [ t ] [ -U ] [ u ] [ v ] [ S ] [ 6 ] [ B | C Valor ] [ -Z ] [ Patrón ... ] <Entrada

cpio -p [ a ] [ d ] [ -E { forzar |ignorar | advertir } ] [ l ] [ m ] [ M ] [ -U ] [ u ] [ v ] [ -Z ] Directorio < NombreArchivo

Descripción

Atención: Si redirige la salida del mandato cpio a un archivo especial (dispositivo), debe redirigirla al dispositivo en bruto y no al dispositivo de bloque. Debido a que la escritura en un dispositivo de bloque se realiza de forma asíncrona, no hay forma de saber si se alcanza el final del dispositivo.
Nota:
  1. El mandato cpio no está habilitado para archivos de más de 2GB de tamaño debido a las limitaciones impuestas por los estándares XPG/4 y POSIX.2 .
  2. El mandato cpio no conserva la naturaleza dispersa de ningún archivo que esté escasamente asignado. Cualquier archivo que originalmente estuviera disperso antes de la restauración tendrá todo el espacio asignado dentro del sistema de archivos para el tamaño del archivo.
  3. No puede utilizar el mandato cpio de System V para sistemas de archivos cifrados.
  4. El tamaño del almacenamiento intermedio de E/S para las llamadas del sistema de lectura y grabación generadas por este mandato se puede configurar utilizando la variable de entorno AIX_STDBUFSZ .

mandato cpio -o

El comando cpio -o lee los nombres de las rutas de los archivos de la entrada estándar y copia estos archivos a la salida estándar, junto con los nombres de las rutas y la información de estado. Evite proporcionar los nombres de vía de acceso del mandato cpio que se componen de muchos archivos enlazados de forma exclusiva, ya que es posible que no tenga suficiente memoria para realizar un seguimiento de los mismos y perdería información de enlace.

mandato cpio -i

El comando cpio -i lee desde la entrada estándar un archivo creado por el comando cpio -o y copia de él los archivos cuyos nombres coincidan con el parámetro Pattern. Estos archivos se copian en el árbol de directorios actual. Puede listar más de un parámetro Patrón , utilizando la notación de nombre de archivo descrita en el mandato ksh . Tenga en cuenta que en esta aplicación los caracteres especiales * (asterisco),? (signo de interrogación), y [...] (corchetes y puntos suspensivos) coinciden con la/(barra inclinada) en los nombres de vía de acceso, además de su uso tal como se describe en el mandato ksh. El valor predeterminado para el parámetro Patrón es un * (asterisco), seleccionando todos los archivos en la entrada. En una expresión como [a-z], el signo menos significa a de acuerdo con la secuencia de clasificación actual.

Una secuencia de clasificación puede definir clases de equivalencia para su uso en rangos de caracteres.

-p, comando cpio

El comando cpio -p lee los nombres de las rutas de los archivos de la entrada estándar y copia estos archivos en el directorio indicado por el parámetro Directory. El directorio especificado ya debe existir. Si estos nombres de vía de acceso incluyen nombres de directorio que todavía no existen, debe utilizar el distintivo d para que se cree el directorio especificado.
Nota: Puede copiar archivos especiales sólo si tiene autorización de usuario root.

comando cpio -U

Para AIX 5.3, el mandato cpio ignorará los atributos ampliados de forma predeterminada. La opción -U informa a cpio para archivar o restaurar atributos, que incluyen ACL.

Se necesita un nuevo tipo de registro para las entradas de atributo ampliado en los archivos de archivado de cpio . También es necesario un nuevo tipo de registro para las entradas de ACL en los archivos de archivado de cpio .

Cada objeto del archivo cpio contiene una cabecera cpio seguida de los datos del objeto especificado.

La tabla siguiente describe la cabecera cpio para el formato binario predeterminado y el formato -c :
Nombre del campo Tamaño (número de bytes) Uso
h_magia 2 Número mágico para identificar cabecera.
desv_h 2 Dispositivo que contiene una entrada de directorio para este archivo.
h_ino 2 Número de inodo que identifica el archivo de entrada en el sistema de archivos.
modo_h 2 Modalidad del archivo de entrada, tal como se define en el archivo mode.h . El estándar POSIX tiene 0130000, 0150000-0170000 disponibles para tipos de archivo que no se van a transportar a otros sistemas.
h_uid 2 ID de usuario del propietario del archivo de entrada.
h_gid 2 ID de grupo del propietario del archivo de entrada.
h_nlink 2 Número de enlaces que están conectados al archivo de entrada.
h_rdev 2 ID del dispositivo remoto del que se toma el archivo de entrada.
h_mtime 4 Hora en que se modificaron los datos por última vez.
tamaño_nombre 2 Longitud del nombre de vía de acceso que incluye NULL.
tamaño_archivo_h 4 Longitud del archivo en bytes.
nombre_h VÍA_ACCESO_MÁX Nombre de vía de acceso terminado en nulo.
Cada archivo que tenga una ACL tendrá un objeto < header, data> inmediatamente anterior al propio objeto que describe la ACL como se indica a continuación:
Cabecera para ACL
El campo h_mode establecido en 0130000 indica que la cabecera describe una ACL. Además, los bits h_mode se establecen para indicar quién puede escribir la ACL. Todos los demás campos de la cabecera cpio se establecen como para el inodo del archivo propietario de la ACL.
Datos
Los datos serán la propia ACL. Los primeros 64 bits de los datos serán del tipo ACL. Irá inmediatamente seguido del valor de ACL.
Cada atributo ampliado tendrá un único objeto < header, data> en el archivador que describe completamente el atributo ampliado como se indica a continuación:
Cabecera para EA
El campo h_mode establecido en 0150000 indica una cabecera de atributo ampliada. Todos los campos de la cabecera cpio se establecen como para el inodo del atributo ampliado. Excepto que el campo h_name se establece en < NULL> <EAName> < NULL>
Datos:
Se formatea para describir el propietario del atributo ampliado, así como los datos para el atributo ampliado. Hay una eaHeader seguida del nombre de vía de acceso del propietario del atributo ampliado, seguido de los datos de atributo ampliado.
struct eaHeader {
	char	pathLen[12];
	char	dataLen[12];
};

Parámetros

Elemento Descripción
Directorio Especifica el directorio.
< Nombre de archivo Especifica una lista de nombres de archivo para que el mandato cpio los utilice como entrada.
>Salida Especifica el dispositivo de salida como, por ejemplo, un disquete o un archivo. Para obtener más información sobre el uso de dispositivos de cinta, consulte el archivo especial rmt .
<Entrada Especifica el dispositivo de entrada (donde Input es el archivo de salida creado por el comando cpio -o ). Para obtener más información sobre el uso de dispositivos de cinta, consulte el archivo especial rmt .
patrón Especifica el patrón (tal como se describe en el mandato ksh ) que se debe utilizar con el mandato. El valor predeterminado para el parámetro Patrónes un * (asterisco), seleccionando todos los archivos en la Entrada.

Distintivos

Todos los distintivos se deben listar juntos, sin espacios en blanco entre ellos. No se pueden utilizar todos los distintivos siguientes con cada uno de los -o, -i, y -p .

Elemento Descripción
< Restablece las horas de acceso de los archivos de origen a sus horas anteriores.
B Intercambia tanto bytes como medias palabras.

Nota: Si hay un número impar de bytes o medias palabras en el archivo que se está procesando, los datos se pueden perder.

B Realiza la entrada y salida de bloque utilizando 512 bytes para un registro.
Nota: Al utilizar las opciones B o C para extraer o crear un archivo de cinta, el factor de bloqueo debe ser un múltiplo del tamaño de bloque físico para dicho dispositivo de cinta.

Cuando se utilizan las opciones B o C para extraer un archivo de cinta, el factor de bloqueo no debe ser mayor que el tamaño del archivo tal como existe en la cinta.

El distintivo B y el distintivo C se excluyen mutuamente. Si lista ambos, el mandato cpio utiliza el último que encuentra en la lista de distintivos.

c Lee y escribe información de cabecera en formato de caracteres ASCII. Si se ha creado un archivo cpio utilizando el distintivo c , debe extraerse con el distintivo c .
C Valor Realiza la entrada y salida de bloque utilizando el parámetro Valor veces 512 bytes a un registro. Por ejemplo, un distintivo -C2 cambia los tamaños de entrada y salida de bloque a 1024 bytes por un registro.
d Crea directorios según sea necesario.
-e La opción -E requiere uno de los argumentos siguientes. Si omite la opción -E , warn es el comportamiento cpio predeterminado.
force
Falla la operación de extracción o copia en un archivo si los atributos de extensión del archivo no se pueden conservar.
Ignorar
Pasa por alto los errores al conservar atributos de ampliación.
warn
Emite un aviso si la reserva de espacio o el tamaño de ampliación fijo del archivo no pueden conservarse. Este es el comportamiento predeterminado.
f Copia todos los archivos excepto los que coinciden con el parámetro Patrón .
g Permite los valores de UID o GID grandes (> USHORT_MAX) al archivar.
Nota: La variable de entorno también se puede utilizar para la misma.
Uso
Export CPIO_LARGE_UID=ON
A Lee o graba información de cabecera en formato hdr . Se puede utilizar la opción -H o -c cuando los sistemas de destino y de destino son de tipos diferentes. Esta opción se excluye mutuamente con las opciones -c y -6 . Este formato permite la interoperabilidad y portabilidad del sistema. El programa de utilidad cpio da soporte al archivado de archivos de más de 2 GB de tamaño cuando se utiliza el formato CRC (-Hcrc). Si se crea un archivo cpio utilizando el distintivo H , se debe extraer con el distintivo H . Los valores válidos para la variable hdr son:
CRC
Igual que CRC. Cabecera ASCII con una suma de comprobación por archivo adicional. El formato de archivo crc maneja archivos de más de 2 GB y el tamaño máximo soportado es de 4 GB.
odc
Cabecera ASCII con tipos fundamentales pequeños.
nuevoc
El nuevo formato portátil ASCII.
l Enlaza archivos en lugar de copiarlos, siempre que sea posible. Esta marca solo se puede utilizar con el comando cpio -p.
m Retiene la hora de modificación de archivo anterior. Este distintivo no funciona al copiar directorios.
M Conserva la hora de modificación de archivo anterior incluso cuando se copian los directorios.
:NONE. Cambia el nombre de los archivos de forma interactiva. Si no desea cambiar el nombre de archivo, especifique un único punto o pulse la tecla < Intro >. En el último caso, el mandato cpio no copia el archivo.
s Intercambia bytes. Esta marca se utiliza únicamente con el comando cpio -i.

Nota: Si hay un número impar de bytes en el archivo que se está procesando, los datos se pueden perder.

O Intercambia medias palabras. Esta bandera solo se puede utilizar con el comando cpio -i.

Nota: Si hay un número impar de medias palabras en el archivo que se está procesando, los datos se pueden perder.

T Crea una tabla de contenido. Esta operación no copia ningún archivo.
-U Realiza el archivado y la extracción de ACL y atributos ampliados. Los atributos incluyen también la lista de control de accesos (ACL). Si el tipo de ACL no está soportado en el sistema de archivos Destino , se convierte al tipo de ACL soportado por el sistema de archivos Destino . Si el EA no está soportado en el sistema de archivos, no se copia.
u Copia incondicionalmente. Un archivo más antiguo ahora sustituye un archivo más reciente con el mismo nombre.
V Lista los nombres de archivo. Si lo utiliza con la bandera t, el resultado es similar al del comando ls -l.
6 Procesa un archivo antiguo (por ejemplo, uno escrito en formato UNIX Sexta edición). Esta bandera solo se puede utilizar con el comando cpio -i.
-Z Archiva la información del sistema de archivos cifrado (EFS) de archivos o directorios cifrados. Se extrae la información de EFS . Cuando especifique los distintivos -t y -v junto con el distintivo -Z , Se visualiza un indicador e después de la modalidad de archivo para los archivos y directorios cifrados que se han archivado con el distintivo -Z y se visualiza un guión (-) para otros archivos.
Nota: Los archivos creados con el distintivo -Z sólo se pueden restaurar en AIX 6.1 o releases posteriores.

Estado de salida

Este mandato devuelve los siguientes valores de salida:

Elemento Descripción
0 Finalización satisfactoria.
>0 Se ha producido un error.

Seguridad

Atención usuarios de RBAC y Trusted AIX: este mandato puede realizar operaciones con privilegios. Sólo los usuarios con privilegios pueden ejecutar operaciones con privilegios. Para obtener más información sobre autorizaciones y privilegios, consulte el apartado Base de datos de mandatos con privilegios en Seguridad. Para obtener una lista de los privilegios y las autorizaciones asociadas a este mandato, consulte el mandato lssecattr o el submandato getcmdattr.

Ejemplos

  1. Para copiar archivos en disquete, entre:
    cpio -ov <filenames >/dev/rfd0
    Esto copia los archivos con nombres de vía de acceso listados en elfilenamesarchivo en formato compacto en el disquete (>/dev/rfd0). El distintivo v hace que el mandato cpio muestre el nombre de cada archivo a medida que se copia. Este mandato es útil para realizar copias de seguridad de archivos. El disquete ya debe estar formateado, pero no debe contener un sistema de archivos ni estar montado.

    Nota: Los archivos con uid y gid mayores que 65535 no se pueden archivar utilizando el mandato cpio . En tales casos, el usuario debe utilizar la copia de seguridad y la restauración.

  2. Para copiar archivos en el directorio actual en disquete, entre:
    ls *.c | cpio -ov >/dev/rfd0
    Esto copia todos los archivos del directorio actual cuyos nombres terminan con.c
  3. Para copiar el directorio actual y todos los subdirectorios en disquete, entre:
    find . -print | cpio -ov >/dev/rfd0
    Esto guarda el árbol de directorios que empieza por el directorio actual (.). e incluye todos sus subdirectorios y archivos. Para hacerlo más rápido, especifique:
    find . -cpio /dev/rfd0 -print
    La cabecera HTTP-printmuestra el nombre de cada archivo a medida que se copia.
  4. Para listar los archivos que se han guardado en un disquete con el mandato cpio , especifique:
    cpio -itv </dev/rfd0
    Muestra la tabla de contenido de los datos guardados anteriormente en el/dev/rfd0en el formato del mandato cpio . El listado es parecido al largo listado de directorios que genera el mandato ls -l. Para listar únicamente los nombres de vías de acceso, utilice solamente los distintivos -it.
  5. Para copiar los archivos guardados anteriormente con el mandato cpio desde un disquete, entre:
    cpio -idmv </dev/rfd0
    Esto copia los archivos guardados anteriormente en el/dev/rfd0mediante el mandato cpio de nuevo en el sistema de archivos (especifique el distintivo -i ). El distintivo d permite al mandato cpio crear los directorios adecuados si se guarda un árbol de directorios. El distintivo m mantiene la última hora de modificación en vigor cuando se guardan los archivos. El distintivo v hace que el mandato cpio muestre el nombre de cada archivo a medida que se copia.
  6. Para copiar los archivos seleccionados desde el disquete, entre:
    cpio -i "*.c" "*.o" </dev/rfd0
    Esto copia los archivos que terminan con.co.odesde disquete. Tenga en cuenta que los patrones"*.c"y"*.o"debe estar entre comillas para evitar que el shell trate el asterisco (*) como un carácter de coincidencia de patrón. Se trata de un caso especial en el que el propio mandato cpio descodifica los caracteres de patrones de coincidencia.
  7. Para cambiar el nombre de los archivos tal como se copian desde el disquete, entre:
    cpio -ir </dev/rfd0
    El distintivo -r hace que el mandato cpio le pregunte si desea renombrar cada archivo antes de copiarlo del disquete. Por ejemplo, el mensaje:
    Rename <prog.c>
    pregunta si se debe proporcionar el archivo guardado comoprog.cun nuevo nombre a medida que se copia. Para cambiar el nombre del archivo, escriba el nuevo nombre y pulse la tecla Intro. Para mantener el mismo nombre, debe volver a especificar el nombre. Para evitar copiar el archivo en absoluto, pulse la tecla Intro.
  8. Para copiar un directorio y todos sus subdirectorios, especifique:
    mkdir /home/jim/newdir
    find . -print | cpio -pdl /home/jim/newdir
    Esto duplica el árbol de directorios actual, incluido el directorio actual y todos sus subdirectorios y archivos. El duplicado se coloca en el nuevo/home/jim/newdir. El distintivo l hace que el mandato cpio enlace archivos en lugar de copiarlos, cuando sea posible.
    Nota: El rendimiento de cpio en la unidad de cinta magnética 9348 Modelo 12 se puede mejorar cambiando el tamaño de bloque predeterminado. Para cambiar el tamaño de bloque, especifique lo siguiente en la línea de mandatos:
    chdev -1 <device_name> -a block_size=32k
  9. Para copiar archivos en el directorio actual en disquete y conservar la ACL y el EA asociados con los archivos, entre:
    ls *.c | cpio -oUv >/dev/rfd0
    

Archivos

Elemento Descripción
/usr/bin/cpio Contiene el mandato cpio .

Mandato cpio de System V

Finalidad (mandato cpio de System V)

Copia archivos dentro y fuera del almacenamiento de archivado y directorios.

Sintaxis (mandato cpio de System V)

cpio -i [ -b ] [ -B ] [ -c ] [ -d ] [ -f ] [ -k ] [ -m ] [ -r ] [ -s ] [ -S ] [ -T ] [ -t ] [ -u ] [ -v ] [ -V ] [ –6 ] [ -C bufsize ] [ -E archivo ] [ -H hdr ] [ -I archivo [ -M mensaje ] ] [ -R ID ] ] [ Patrones...]

cpio -o [ -a ] [ -A ] [ -B ] [ -c ] [ -L ] [ -v ] [ -V ] [ -C bufsize ] [ -H hdr ] [ -K mediasize ] [ -O archivo [ -M mensaje ] ]

cpio -p [ -a ] [ -d ] [ -l ] [ -L ] [ -m ] [ -u ] [ -v ] [ -V ] [ -R ID ] Directorio

Descripción (Mandato cpio de System V)

El mandato cpio copia los archivos dentro y fuera de un archivador. Las opciones -i, -o y -p seleccionan la acción que se va a realizar. La lista siguiente describe cada una de las acciones. Las opciones -o, -p e -i son mutuamente excluyentes.

-i

cpio -i (copiar en) extrae archivos de la entrada estándar (solo si no se especifica -I ), que se supone que es el producto de un cpio -o anterior. Sólo se seleccionan los archivos con nombres que coinciden con Patrones . Los patrones son expresiones regulares que se proporcionan en el nombre de archivo que genera la notación de ksh. En Patrones, los metacaracteres "?", "*" y " [.... ] "coincide con la barra inclinada ("/") y barra inclinada invertida (" \") es un carácter de escape. ¡Un «!» meta-carácter significa no. (Por ejemplo, el patrón "[! abc]" excluiría todos los archivos que empiezan por a, b o c.) Se pueden especificar varios patrones y, si no se especifica ningún patrón, el valor predeterminado para Patrones es "*" (es decir, seleccionar todos los archivos). Cada patrón debe estar entre comillas dobles; de lo contrario, se puede utilizar el nombre de un archivo en el directorio actual. Los archivos extraídos se crean condicionalmente y se copian en el árbol de directorios actual basándose en las opciones descritas a continuación.

El comando cpio -i lee la entrada estándar de un archivo creado con el comando cpio -o y copia los archivos cuyos nombres coincidan con el parámetro patrón. El parámetro pattern es una expresión regular proporcionada con la notación general de ksh. Estos archivos se copian en el árbol de directorios actual. Se puede utilizar más de un parámetro de patrón, utilizando la notación de nombre de archivo descrita en el mandato ksh . Los patrones pueden ser caracteres especiales * (asterisco),? (signo de interrogación), y [...] (corchetes y elipses). El valor predeterminado para el parámetro de patrón es un * (asterisco), seleccionando todos los archivos en la entrada. En una expresión como [a-z], el signo menos significa through según la secuencia de clasificación actual.

Los permisos de los archivos serán los del cpio -o anterior. Los permisos de propietario y grupo serán los mismos que los del usuario actual a menos que el usuario actual sea el usuario root. Si esto es cierto, los permisos de propietario y de grupo serán los mismos que los resultantes del anterior cpio -o. Los bloques se notifican en cantidades de 512 bytes.

Si cpio -i intenta crear un archivo que ya existe y el archivo existente tiene la misma antigüedad o es más reciente, cpio mostrará un mensaje de advertencia y no reemplazará el archivo. Por otro lado, si el archivo que se está extrayendo es más antiguo que el del archivo cpio, el archivo existente se sustituirá sin ningún aviso del mandato.

cpio -o (copiar)

cpio -o lee la entrada estándar para obtener una lista de nombres de rutas y copia esos archivos en la salida estándar junto con el nombre de la ruta y la información de estado.

-p

cpio -p lee la entrada estándar para obtener una lista de nombres de ruta de archivos y copia estos archivos en el directorio indicado por el parámetro Directory. El directorio especificado ya debe existir. Si estos nombres de vía de acceso incluyen nombres de directorio que todavía no existen, debe utilizar el distintivo d para que se cree el directorio especificado. De forma predeterminada, la lista de control de acceso (ACL) se transfiere [copiada] del archivo de origen al archivo de destino sólo con esta opción.

Distintivos (mandato cpio de System V)

Elemento Descripción
-a Restablece la hora de acceso de los archivos de origen a sus horas anteriores.
-A Añade archivos a un archivador. La opción -A requiere la opción -O . La opción de adición -A no es válida para el archivo especial rmt y los disquetes.
-b Invierta el orden de los bytes dentro de cada palabra. Esta opción sólo es válida con la opción -i .
-B El tamaño de almacenamiento intermedio predeterminado es 512 bytes cuando no se utiliza ni esta ni la opción -C . Pero cuando se utiliza el distintivo -B , el tamaño del almacenamiento intermedio se establece en 5120 bytes en bloque para las operaciones de entrada/salida.
-c Leer o escribir información de cabecera en formato de caracteres ASCII para la interoperatividad y portabilidad del sistema. La opción -c se excluye mutuamente con -H y -6. Se puede utilizar la opción -c o -H cuando las máquinas de destino y destino son de tipos diferentes.
-C tamaño_búfer El tamaño de bloque para la operación de entrada/salida se establece en bufsize, donde bufsize indica el tamaño de almacenamiento intermedio en entero positivo. Si se utiliza con -K, bufsize debe ser un múltiplo de 1K.
-d Crea directorios según sea necesario.
-E archivo Especifique un archivo de entrada (archivo) que contenga una lista de nombres de archivo que se extraerán del archivador con un nombre de archivo por línea.
-f Copie todos los archivos excepto los del parámetro Patrón .
-H r Leer o escribir información de cabecera en formato hdr. Se puede utilizar la opción -h o -c cuando las máquinas de destino y de destino son de tipos diferentes. Esta opción se excluye mutuamente con las opciones -c y -6 . Este formato permite la interoperabilidad y portabilidad del sistema. El programa de utilidad cpio da soporte al archivado de archivos de más de 2 GB de tamaño cuando se utiliza ASCII (-c ), CRC (-Hcrc ), tar ( -Htar), o formatos ustar (-Hustar). Los valores válidos para hdr son:
CRC
Igual que CRC. Cabecera ASCII con una suma de comprobación por archivo adicional. El formato de archivo crc manejará archivos de más de 2 GB.
ustar
Igual que USTAR. IEEE/P1003 Formato y cabecera estándar de intercambio de datos.
tar
Igual que TAR. Cabecera y formato tar. El formato tar se proporciona para la compatibilidad con el programa tar .
odc
Cabecera ASCII con tipos fundamentales pequeños.
-I archivo Lea el contenido del archivo como un archivador de entrada. Si el archivo es un dispositivo especial de caracteres y el soporte actual se ha leído completamente, sustituya el soporte y pulse la tecla Intro para continuar con el siguiente soporte. Esta opción sólo es válida con la opción -i .
-k Intente omitir las cabeceras de archivo dañadas y los errores de E/S que se puedan encontrar. Esta opción permite al usuario leer sólo aquellos archivos con buenos encabezados si los archivos de un medio que está dañado. Esta opción sólo es válida con la opción -i .
-K mediasizar Especifique el tamaño de soporte como un múltiplo de 1K. Si se utiliza con -C tamaño_búfer, tamaño_búfer debe ser un múltiplo de 1K.
-l Los archivos de enlaces fijos en lugar de copiarlos, siempre que sea posible. Si un archivo no se puede enlazar, se copiará. Esta opción sólo es válida con la opción -p .
-l Esta opción ayuda a copiar los archivos en lugar de enlazarlos. El contenido del archivo de enlace se copia con el nombre de enlace. Sin la opción -L o -l , los enlaces simbólicos se mantendrán de forma predeterminada con -p.
-m Retener la hora de modificación de archivo anterior. La hora de modificación y la hora de acceso de un archivo restaurado se establecen en la hora de modificación del archivo cuando se realizó la copia de seguridad. La hora de modificación de los directorios no se conserva.
-M mensaje Defina un mensaje para utilizar al conmutar medios. Cuando las opciones -O o -I se asignan a cpio en un dispositivo especial, esta opción se puede utilizar para definir el mensaje que se imprime cuando se llega al final del soporte. Se puede colocar un %d en el mensaje para imprimir el número de secuencia del siguiente soporte necesario para continuar.
-O archivo Dirija la salida de cpio al archivo . Si file es un dispositivo especial y el soporte actual está lleno, sustituya el soporte y escriba Intro para continuar en el siguiente soporte. Esta opción sólo es válida con la opción -o .
-r Cambia el nombre de los archivos de forma interactiva. Para omitir un archivo, escriba Intro. Para conservar el nombre de vía de acceso original, escriba. (punto). Esta opción sólo es válida con la opción -i .
-R ID Reasigna la información de propiedad y de grupo para cada archivo a un IDde usuario válido. Esta opción sólo es válida para el usuario root.
-s Intercambie bytes dentro de cada media palabra.
Nota: Los distintivos -s y -S son básicamente para la secuenciación de bytes.
-S Intercambiar medias palabras dentro de cada palabra.
Nota: Los distintivos -s y -S son básicamente para la secuenciación de bytes.
-T Crea una tabla de contenido. Esta operación no crea ningún archivo. El distintivo -t y el distintivo -V se excluyen mutuamente.
-T Trunca los nombres de archivo largos a 14 caracteres. Esta opción sólo es válida con la opción -i .
-u Copia incondicionalmente (normalmente, un archivo más antiguo no sustituirá un archivo más reciente con el mismo nombre).
-v Esta es la opción detallada que hace que se imprima una lista de nombres de archivo. Cuando se utiliza con la opción -t, la tabla de contenidos se parece a la salida de un comando ls -l.
-v Esta es una opción verbosa especial que permite imprimir un punto para cada archivo leído o escrito. Útil para asegurar al usuario que cpio está trabajando sin imprimir todos los nombres de archivo. Tenga en cuenta que las opciones -V y -v se excluyen mutuamente y lo que ocurra antes en la línea de mandatos se procesará en consecuencia ignorando la otra.
-6 Procesa un archivo de formato de archivado de UNIX System Sexta Edición. Esta opción se excluye mutuamente con las opciones -c y -H .

Parámetros (mandato cpio de System V)

Elemento Descripción
Directorio Especifica el directorio.
Patrones Especifica uno o más patrones (tal como se describe en el mandato ksh ) que se van a utilizar con el mandato. El valor predeterminado para el parámetro Patrones es un * (asterisco), seleccionando todos los archivos en la entrada.

Estado de salida (mandato cpio de System V)

0
El mandato se ha completado satisfactoriamente.
>0
Se ha producido un error.

Ejemplos (mandato cpio de System V)

  1. Para copiar todos los archivos del directorio actual en el dispositivo de cinta /dev/rmt0, especifique:
    find . | /usr/sysv/bin/cpio -oc >/dev/rmt0
    La opción -c garantiza que el archivo se hace portable a otras máquinas. En lugar de find , también puede utilizar ls, cat, echo , etc. para interconectar una lista de nombres con cpio. La salida también se puede redirigir a un archivo cpio normal en lugar de a un dispositivo.
  2. Para extraer un archivo de archivado cpio denominado "arfile" creado por el mandato cpio , utilice lo siguiente:
    /usr/sysv/bin/cpio -icdI arfile 
    Aquí todos los archivos se extraen del archivo cpio y la opción -d garantiza que se creen las vías de acceso de directorio necesarias cuando sea necesario.
  3. Un archivo de archivado cpio también se puede extraer de la siguiente manera:
    /usr/sysv/bin/cpio -icd < arfile 
    La opción -d garantiza que todos los directorios necesarios se crean bajo el directorio actual. La entrada estándar sólo se puede utilizar si no se especifica el distintivo -I .
  4. Para extraer incondicionalmente todos los archivos de "arfile", utilice lo siguiente:
    /usr/sysv/bin/cpio -icduI arfile 
  5. Para omitir los archivos que han dañado las cabeceras, cpio se puede utilizar de la siguiente manera:
    /usr/sysv/bin/cpio -ickudI arfile 
  6. Si es necesario restablecer la hora de acceso de los archivos archivados cuando se utiliza cpio para crear un archivado, utilice cpio de la siguiente manera:
    ls | /usr/sysv/bin/cpio -oca > arfile 
  7. Para extraer sólo los archivos que coinciden con el patrón "a*" del archivo "ar", utilice lo siguiente:
    cat ar | /usr/sysv/bin/cpio -ickud "a*"
    Este mandato extrae todos los archivos que empiezan por la letra "a".
  8. Para visualizar la lista de archivos archivados, utilice cpio de la siguiente manera:
    cat ar | /usr/sysv/bin/cpio -itv
    La opción verbose (-v ) garantiza que la lista dada por la opción -t se muestre de forma muy similar al comando ls -l.
  9. El comando cpio -p se puede utilizar para copiar un árbol de directorios a una nueva ruta, de la siguiente manera:
    find . -print | /usr/sysv/bin/cpio -pd /home/user1/newdir 
    Todo el árbol de directorios del directorio actual se copia en /home/user1/newdir. La opción -d garantiza que los directorios se creen según sea necesario.
  10. Para conservar la hora de modificación y la lista de control de accesos al copiar el árbol de directorios, utilice el mandato cpio del modo siguiente:
    find . -name "*.o" -print | /usr/sysv/bin/cpio -pdlmv /home/user1/newdir 
    En este ejemplo, sólo los archivos .o bajo el árbol de directorios se copian en /home/user1/newdir.
  11. Para añadir una lista de archivos a un archivador cpio que coincida con un patrón determinado, invoque un mandato similar al siguiente:
    ls d* | /usr/sysv/bin/cpio -oAO /tmp/ar 
    En este ejemplo, todos los archivos que empiezan por "d" en el directorio actual se añadirán al archivo cpio .
  12. Para extraer sólo una lista de archivos listados dentro de un archivo normal de un archivador cpio , utilice el mandato siguiente:
    cat ar | /usr/sysv/bin/cpio -i -E Efile 
    En este ejemplo, cpio sólo extrae los archivos que se listan en el archivo normal "Efile", siempre que el nombre de archivo especificado exista en el archivador.
  13. Para enlazar todos los archivos en lugar de copiarlos, invoque un mandato similar al siguiente:
    ls d* | /usr/sysv/bin/cpio -pdl /home/user2/newdir 
    En este ejemplo, el distintivo -l garantiza que todos los nombres de archivo que empiezan con el carácter "d" estén enlazados al /home/user2/newdir, el directorio especificado. El enlace fijo entre sistemas de archivos no está permitido, por lo que la opción -l no se puede utilizar cuando el directorio de destino está en cualquier otro sistema de archivos.

Archivos (mandato cpio de System V)

Elemento Descripción
/usr/sysv/bin/cpio Contiene el mandato cpio de System V.