Manual Page Result
0
Command: cp | Section: 1 | Source: Digital UNIX | File: cp.1.gz
cp(1) General Commands Manual cp(1)
NAME
cp - Copies files
SYNOPSIS
cp [-fhip] [--] source_file destination_file
cp [-fhip] [--] source_file... destination_directory
cp [-fhip] [-r|-R] [--] [source_file|source_directory]... destina-
tion_directory
The cp command copies a source file or the files in a source directory
to a destination file or directory. If your source and destination are
directories, the source is copied to the destination and created with
the same name.
STANDARDS
Interfaces documented on this reference page conform to industry stan-
dards as follows:
cp: XPG4, XPG4-UNIX
Refer to the standards(5) reference page for more information about in-
dustry standards and associated tags.
OPTIONS
[DIGITAL] The cp command does not prompt you when an existing file is
to be overwritten. (If both -f and -i are specified on the command
line--for example, because an alias includes one of them--whichever ap-
pears last overrides the other.) [DIGITAL] Together with the -R op-
tion, the same as the -r option. Prompts you with the name of the file
whenever the copy would cause an existing file to be overwritten. An
answer beginning with y, or the locale's equivalent of y, causes cp to
continue. Any other answer prevents it from overwriting the file. Pre-
serves for the copy the modification time, access time, file mode, user
ID, and group ID of the original, as allowed by permissions. If the
user ID and group ID cannot be preserved, no error message is displayed
and the exit value is not altered. If the original is set-user-ID or
set-group-ID, and either the user ID or the group ID cannot be pre-
served, the set-user-ID and set-group-ID bits are not preserved in the
copy's permissions. [DIGITAL] Preserves the extended file attributes
(property list), including the access control list (ACL) if any. When
the source is a directory, copies the directory and the entire subtree
connected at that point. Special file types, such as symbolic links,
named pipes (FIFOs), and block and character devices, are opened and
their contents are copied to regular files having the same name. (This
may be desired for links but is probably not desired for disk, tape, or
network devices.) For example, if a is a symbolic link to file z and a
is copied to b with the -r option, b is not a symbolic link to file z
but is a copy of it. As with -r, when the source is a directory,
copies the directory and the entire subtree connected at that point.
However, destination_files are created with the same file types as
source_files, for instance symbolic links, named pipes (FIFOs), or
block or character devices. As an example, if a is a symbolic link to
file z and a is copied to b with the -R option, b will also be a sym-
bolic link to file z. If source_file is a FIFO, the file permission
bits of destination_file are set to those of source_file modified by
the file creation mask of the user if the -p option is not used. Indi-
cates that the arguments following this option are to be interpreted as
file names. This null option allows the specification of file names
that start with a minus.
DESCRIPTION
If a destination file already exists, its contents are overwritten if
permissions allow, but cp does not change its mode, user ID, or group
ID. However, if the file is not being copied by the root user, writing
the file may clear the set-user-ID or set-group-ID permission bits.
If the destination file does not exist, the mode of the source file is
used, as modified by the file mode creation mask (umask). If the source
file is either set-user-ID or set-group-ID, those bits are removed un-
less the -p option is used.
Appropriate permissions are always required for file creation or over-
writing.
[DIGITAL] You can also copy special device files. If the file is a
named pipe, the data in the pipe is copied into a regular file. If the
file is a device, the file is read until the end of file, and that data
is copied into a regular file.
The LC_MESSAGES variable determines the locale's equivalent of y or n
(for yes/no queries).
If the source_file is a directory, the following is true: If neither
the -R or -r option was specified, an error message is displayed and
source_file is not copied. If the target specified exists and is a
file, not a directory, an error message is displayed and source_file is
not copied. If the target does not exist and the -p option is speci-
fied, the permission bits of the target directory are set equal to the
source directory bitwise inclusively ORed with S_IRWXU (0700 octal).
This means the newly created directory will always allow the owner
read, write and execute permission. If the target does not exist and
the -p option is not specified, the permission bits of the target di-
rectory are set equal to the source directory bits, modified by the
file creation mask of the user (shuts off the corresponding permission
bits specified in the umask). The resulting permission bits are then
ORed with S_IRWXU (0700 octal) which gives the owner read, write and
execute permission. If the target does not exist and cannot be cre-
ated, an error message is displayed and source_file is not copied.
NOTES
Do not give the destination the same name as one of the source files.
If you specify a directory as the destination, the directory must al-
ready exist. If you are using the -r option to copy the contents of
one directory to another, and source_directory contains subdirectories
that do not exist in destination_directory, the subdirectories are cre-
ated.
EXIT STATUS
The following exit values are returned: Successful completion. An er-
ror occurred.
EXAMPLES
To copy one file to another, enter: cp file1 file2
If file2 exists (and is writable), it is replaced by file1. To
copy files to a directory, enter: cp file1 file2 dir1
The dir1 directory must exist. To copy all files in a directory
and preserve their modification times, enter: cp -p dir1/* dir2
To copy a directory tree to another directory, enter: cp -r
dir1/* dir2
The dir1 tree is created in dir2.
ENVIRONMENT VARIABLES
The following environment variables affect the execution of cp: 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). Determines the locale for the format
and contents of diagnostic messages written to standard error. Deter-
mines the location of message catalogues for the processing of LC_MES-
SAGES.
SEE ALSO
Commands: cpio(1), find(1), link(1), ln(1), mv(1), pax(1), tar(1),
umask(1)
Functions: umask(2)
Files: proplist(4), acl(4)
Standards: standards(5)
cp(1)