Manual Page Result
0
Command: cpio | Section: 1 | Source: Digital UNIX | File: cpio.1.gz
cpio(1) General Commands Manual cpio(1)
NAME
cpio - Copies files to and from archive storage.
SYNOPSIS
cpio -o[aBcehvV] [-C value] [-M"string"] [-Odevice]
cpio -i[bBcdefmrsStuvz6] [-C value] [-M"string"] [-Idevice] [pat-
tern...]
cpio -p[adlmruvV] directory
STANDARDS
Interfaces documented on this reference page conform to industry stan-
dards as follows:
cpio: XPG4, XPG4-UNIX
Refer to the standards(5) reference page for more information about in-
dustry standards and associated tags.
OPTIONS
A hyphen (-) is required before the -i, -I, -o, -O, and -p options; all
other options follow -i, -o, or -p without leading spaces and without a
hyphen.
[DIGITAL] The following two options are preceded by a hyphen and must
be used separately from the other options. [DIGITAL] Specifies the
input device containing the archive. This argument must be present to
import data from a device. [DIGITAL] Specifies the output device to
store the archive. This argument must be present to export data to a
device.
Not all of the following options can be used with each of the -o, -i,
and -p options. Resets the access times of copied files to the current
time. (When the l option is also specified, the access times of the
linked files are not reset.) [DIGITAL] Swaps both bytes and half-
words. (See also the s and S options.) If there is an odd number of
bytes or halfwords in the file being processed, data can be lost. This
option can only be used with cpio -i. Performs block input/output,
5120 bytes to a record. This option cannot be used with cpio -p. It is
meaningful only with data directed to or from /dev/rmt/*. This option
does not work with certain magnetic tape drives. The C and B options
are mutually exclusive. If you specify both, the last one on the com-
mand line is used. Writes header information in ASCII character form.
Specify this option when POSIX compliance is required and when you are
creating or restoring archives for or from another system. [DIGI-
TAL] Performs block input/output using value as the record size. The
C and B options are mutually exclusive. If you specify both, the last
one on the command line is used. Creates directories as needed. [DIG-
ITAL] Read or write cpio header information in extended cpio header
format. Use this option to read or write block special or character
special files. Any cpio archives created with the e option of DIGITAL
UNIX Version 4.0 are not backward compatible with earlier versions of
DIGITAL UNIX. Copies all files except those matching pattern (cpio -i
only). [DIGITAL] Forces cpio to follow symbolic links as if they were
normal files or directories. The cpio command does not follow symbolic
links, but instead saves the link text in the archive. Links files
rather than copying them, whenever possible. Symbolic (soft) links are
created rather than hard links. This option can be used only with cpio
-p. Retains the previous file modification time. This option cannot
be used when copying directories. [DIGITAL] Specifies the End-of-Me-
dia message. This option is used to customize the message that appears
when it is time to change archive volumes. The -M option is valid only
when -I or -O is also specified. Causes cpio to ask whether or not to
rename each file before copying it. If you do not want to change the
file name, enter the current file name. You can press <Return> only to
have cpio skip copying the file. [DIGITAL] Swaps bytes. This option
can be used only with cpio -i. If there is an odd number of bytes in
the file being processed, data can be lost. [DIGITAL] Swaps half-
words. This option can be used only with cpio -i. If there is an odd
number of halfwords in the file being processed, data can be lost.
Creates a table of contents of the input. This option does not copy
any files. Copies unconditionally. Otherwise, a file from the archive
with the same name as an existing file in the file system is copied
only if the archived file is the newer one. Lists file names. If you
use this option with the t option, the output looks similar to that of
the ls -l command. [DIGITAL] Prevents any extended attributes from
being archived with associated files. This option is particularly use-
ful for archiving files that are to be restored with previous versions
of tar and cpio. [DIGITAL] Positions the tape after the EOF marker on
extraction or listing. The z option lets the user extract or list
tapes that have multiple archives on them one after the other without
error as a result of the tape not being positioned correctly for the
next extraction or listing. [DIGITAL] Processes an old file (one
written in UNIX Sixth Edition format). This option can be used only
with cpio -i.
OPERANDS
A pathname of an existing directory to be used as the target of cpio
-p. Expressions making use of a pattern-matching notation similar to
that used by the shell for file name pattern matching, and similar to
regular expressions. The following metacharacters are defined: Matches
any string, including the empty string. Matches any single character.
Matches any one of the enclosed characters. A pair of characters sepa-
rated by `-' matches any symbol between the pair (inclusive), as de-
fined by the system default collating sequence.
In pattern, the special characters ?, *, and [ also match the /
character.
Multiple cases of pattern can be specified and if no pattern is
specified, the default for pattern is * (that is, select all
files).
DESCRIPTION
The cpio command copies files between archive storage and the file sys-
tem. It is used to save and restore data from traditional format cpio
archives.
There are three versions of the cpio command:
cpio -o (copy out)
This command reads file pathnames from standard input and copies these
files to standard output along with pathnames and status information.
Output is padded to a 512-byte boundary.
cpio -i (copy in)
This command reads from standard input an archive file created by the
cpio -o command and copies from it the files with names that match pat-
tern. These files are copied into the current directory tree. The
file permissions are the same as the permissions associated with the
files copied out using cpio -o. The owner and group of the files are
those of the current user unless the user is superuser, in which case
cpio retains the owner and group of the files of the previous cpio -o.
You can list more than one pattern using the file name notation de-
scribed. The default pattern is *, selecting all files in the archive.
In an expression such as [a-z], the hyphen means "through" according to
the current collating sequence. The collating sequence is determined
by the LC_COLLATE environment variable.
cpio -p (directory copy)
This command reads file pathnames from standard input and copies these
files into the named directory. The specified directory must already
exist. If these pathnames include directory names and if these direc-
tories do not already exist, you must use the -d option to cause the
directories to be created.
[DIGITAL] Special files are not supported. Pathnames cannot exceed
128 bytes. Avoid giving cpio pathnames made up of many uniquely linked
files because cpio might not have enough memory to keep track of them
and could lose linking information.
NOTES
[DIGITAL] Archives created with extended attributes cannot be read by
Version 2.0 of the cpio command. The following describes the results
of restoring archived files and directories when you use Version 2.0 of
the cpio command: [DIGITAL] You cannot restore an archive directory
with extended attributes. The extended attributes are restored as a
regular file that cannot be overwritten; the original directory cannot
be recreated. In addition, the cpio command restores the archived
files containing extended attributes as regular files. When the cpio
command restores the original file with the extended attributes, the
command fails with errno:20. [DIGITAL] You cannot archive files with
extended attributes. [DIGITAL] Archives created with the new pax
utility and having cpio format, can be restored using only the new pax
or cpio commands even if none of the archived files have extended at-
tributes.
To achieve backward compatibility of archived files, use the following
suggestions: Archive only files that do not have extended attributes.
Use the old cpio command at /usr/opt/obsolete/usr/bin/cpio.
CAUTIONS
[DIGITAL] When redirecting the output from cpio to a special file (de-
vice), redirect it to the raw device and not the block device. Because
writing to a block device is done asynchronously, there is no way to
know if the end of the device has been reached.
EXIT STATUS
The following exit values are returned: Successful completion. An er-
ror occurred.
EXAMPLES
To copy files to magnetic tape, enter: cpio -ov < file-list
-O/dev/rmt12
This command copies the files with pathnames that are listed in
the file specification in a compact form to the magnetic tape
(/dev/rmt12). The -v option causes cpio to display the name of
each file as it is copied. This command is useful for making
backup copies of files. To copy files in the current directory
whose names end with onto magnetic tape, enter: ls *.c | cpio
-ov -O/dev/rmt12
To copy the current directory and all subdirectories onto mag-
netic tape, enter: find . -print | cpio -ov -O/dev/rmt12
This command saves the directory tree that starts with the cur-
rent directory (.) and includes all of its subdirectories and
files. Another way to do the same thing is by entering the fol-
lowing command: find . -cpio /dev/rmt12 -print
The -print option displays the name of each file as it is
copied. To list the files that have been saved onto a magnetic
tape with cpio, enter: cpio -itv -I/dev/rmt12
This command displays the table of contents of the data previ-
ously saved onto /dev/rmt12 in cpio format. To list only the
file pathnames, use only the -it options. To copy the files
previously saved with cpio from a magnetic tape, enter: cpio
-idmv -I/dev/rmt12
This command copies the files previously saved onto /dev/rmt12
by cpio back into the file system (specified by the -i option).
The -d option lets cpio create the appropriate directories if a
directory tree was saved. The -m option maintains the last mod-
ification time that was in effect when the files were saved.
The -v option causes cpio to display the name of each file as it
is copied. To copy selected files from magnetic tape, enter:
cpio -i -I/dev/rmt12 "*.c" "*.o"
This command copies the files that end with or from magnetic
tape. The patterns *.c and *.o must be enclosed in double quo-
tation marks (" ") to prevent the shell from treating the * (as-
terisk) as a pattern-matching character. In this special case,
cpio itself decodes the pattern-matching characters. To rename
files as they are copied from magnetic tape, enter: cpio -ir
-I/dev/rmt12
The -r option causes cpio to ask you whether or not to rename
each file before copying it from magnetic tape. For example,
the following message asks you whether you want to give the file
saved as prog.c a new name as it is being copied: Rename
<prog.c>
To rename the file, type the new name and press <Return>. To
keep the same name, you must enter the old name at the prompt.
To avoid copying the file at all, press <Return> alone. To copy
a directory and all of its subdirectories, enter: mkdir
/u/jim/newdir find . -print | cpio -pdl /u/jim/newdir
This command duplicates the current directory tree, including
the current directory and all of its subdirectories and files.
The duplicate is placed in the new /u/jim/newdir directory. The
-l option causes cpio to link files instead of copying them,
when possible.
ENVIRONMENT VARIABLES
The following environment variables affect the execution of cpio: Pro-
vides a default value for the internationalization variables that are
unset or null. If LANG is unset or null, the corresponding value from
the default locale is used. If any of the internationalization vari-
ables contain an invalid setting, the utility behaves as if none of the
variables had been defined. If set to a non-empty string value, over-
rides the values of all the other internationalization variables. De-
termines the locale for the interpretation of sequences of bytes of
text data as characters (for example, single-byte as opposed to multi-
byte characters in arguments and input files) and the behavior of char-
acter classes within bracketed file name patterns. Determines the lo-
cale for the format and contents of diagnostic messages written to
standard error. Determines the format of date and time strings output
when listing the contents of an archive with the -v option. Determines
the location of message catalogues for the processing of LC_MESSAGES.
Determines the time zone used with date and time strings.
SEE ALSO
Commands: ar(1), find(1), ls(1), ksh(1), pax(1), Bourne shell sh(1b),
POSIX shell sh(1p), tar(1)
Files: tar(4)
Standards: standards(5)
cpio(1)