cp(1) General Commands Manual cp(1)

cp - Copy SOURCE to DEST, or multiple SOURCE(s) to DIRECTORY.

cp [-t|--target-directory] [-T|--no-target-directory] [-i|--interactive] [-l|--link] [-n|--no-clobber] [-R|--recursive] [--strip-trailing-slashes] [--debug] [-v|--verbose] [-s|--symbolic-link] [-f|--force] [--remove-destination] [--backup] [-b ] [-S|--suffix] [--update] [-u ] [--reflink] [--attributes-only] [--preserve] [-p|--preserve-default-attributes] [--no-preserve] [--parents] [-P|--no-dereference] [-L|--dereference] [-H ] [-a|--archive] [-d ] [-x|--one-file-system] [--sparse] [--copy-contents] [--context] [-g|--progress] [-h|--help] [-V|--version] [paths]

Copy SOURCE to DEST, or multiple SOURCE(s) to DIRECTORY.

copy all SOURCE arguments into target-directory
Treat DEST as a regular file and not a directory
ask before overwriting files
hard-link files instead of copying
don't overwrite a file that already exists
copy directories recursively
remove any trailing slashes from each SOURCE argument
explain how a file is copied. Implies -v
explicitly state what is being done
make symbolic links instead of copying
if an existing destination file cannot be opened, remove it and try again (this option is ignored when the -n option is also used). Currently not implemented for Windows.
remove each existing destination file before attempting to open it (contrast with --force). On Windows, currently only works for writeable files.
make a backup of each existing destination file
like --backup but does not accept an argument
override the usual backup suffix
move only when the SOURCE file is newer than the destination file or when the destination file is missing

[possible values: none, all, older]

like --update but does not accept an argument
control clone/CoW copies. See below

[possible values: auto, always, never]

Don't copy the file data, just the attributes
Preserve the specified attributes (default: mode, ownership (unix only), timestamps), if possible additional attributes: context, links, xattr, all

[possible values: mode, ownership, timestamps, context, links, xattr, all]

same as --preserve=mode,ownership(unix only),timestamps
don't preserve the specified attributes
use full source file name under DIRECTORY
never follow symbolic links in SOURCE
always follow symbolic links in SOURCE
follow command-line symbolic links in SOURCE
Same as -dR --preserve=all
same as --no-dereference --preserve=links
stay on this file system
control creation of sparse files. See below

[possible values: never, auto, always]

NotImplemented: copy contents of special files when recursive
NotImplemented: set SELinux security context of destination file to default type
Display a progress bar. Note: this feature is not supported by GNU coreutils.
Print help
Print version
[paths]

Do not copy a non-directory that has an existing destination with the same or newer modification timestamp; instead, silently skip the file without failing. If timestamps are being preserved, the comparison is to the source timestamp truncated to the resolutions of the destination file system and of the system calls used to update timestamps; this avoids duplicate work if several cp -pu commands are executed with the same source and destination. This option is ignored if the -n or --no-clobber option is also specified. Also, if --preserve=links is also specified (like with cp -au for example), that will take precedence; consequently, depending on the order that files are processed from the source, newer files in the destination may be replaced, to mirror hard links in the source. which gives more control over which existing files in the destination are replaced, and its value can be one of the following:

* all This is the default operation when an --update option is not specified, and results in all existing files in the destination being replaced. * none This is similar to the --no-clobber option, in that no files in the destination are replaced, but also skipping a file does not induce a failure. * older This is the default operation when --update is specified, and results in files being replaced if they’re older than the corresponding source file.

The backup suffix is '~', unless set with --suffix or SIMPLE_BACKUP_SUFFIX. The version control method may be selected via the --backup option or through the VERSION_CONTROL environment variable. Here are the values:


none, off never make backups (even if --backup is given)
numbered, t make numbered backups
existing, nil numbered if numbered backups exist, simple otherwise
simple, never always make simple backups

v0.0.26

cp 0.0.26