cp â copy files and directories
| Use Case | Command | Description |
|---|---|---|
| đ Copy a file | cp source dest | Copy source to dest (overwrites if exists) |
| đ Copy a directory recursively | cp -r source_dir dest_dir | Copy entire directory tree |
| đĄī¸ Preserve attributes (timestamps, ownership) | cp -p source dest | Preserve mode, ownership, timestamps |
| đ Make a symbolic link instead of copy | cp -s source link | Create symbolic link (not a copy) |
| đŦ Interactive mode (prompt before overwrite) | cp -i source dest | Ask before overwriting existing files |
| đĸ Verbose output | cp -v source dest | Show what is being copied |
| đ Update only (newer source) | cp -u source dest | Copy only if source is newer or dest missing |
| đ Do not overwrite existing files | cp -n source dest | No clobber (overrides -i) |
| đĻ Backup existing destination | cp --backup source dest | Auto-backup with suffix (default ~) |
| đ Hard link instead of copy | cp -l source dest | Create hard link to the same inode |
| đ Copy contents of special files (recursive) | cp --copy-contents -r source dest | When copying directories, include device/special files |
| đ Copy with full source path under directory | cp --parents source/sub dest/ | Preserve relative path structure |
| đ Reflink (CoW copy) | cp --reflink=auto source dest | Copy-on-write if supported, else fallback |
cp [OPTION]... [-T] SOURCE DEST
cp [OPTION]... SOURCE... DIRECTORY
cp [OPTION]... -t DIRECTORY SOURCE...
Copy SOURCE to DEST, or multiple SOURCE(s) to DIRECTORY.
Mandatory arguments to long options are mandatory for short options too.
By default, sparse SOURCE files are detected by a crude heuristic and the corresponding DEST file is made sparse as well. That is the behavior selected by --sparse=auto. Specify --sparse=always to create a sparse DEST file whenever the SOURCE file contains a long enough sequence of zero bytes. Use --sparse=never to inhibit creation of sparse files.
When --reflink[=always] is specified, perform a lightweight copy, where the data blocks are copied only when modified. If this is not possible the copy fails, or if --reflink=auto is specified, fall back to a standard copy. Use --reflink=never to ensure a standard copy is performed.
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:
As a special case, cp makes a backup of SOURCE when the force and backup options are given and SOURCE and DEST are the same name for an existing, regular file.
Written by Torbjorn Granlund, David MacKenzie, and Jim Meyering.
GNU coreutils online help: https://www.gnu.org/software/coreutils/
Report any translation bugs to https://translationproject.org/team/
Copyright Š 2020 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later https://gnu.org/licenses/gpl.html.
This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law.
Full documentation https://www.gnu.org/software/coreutils/cp
or available locally via: info '(coreutils) cp invocation'
Generated by phpman v4.10.0-7-g98e9fd5 · Markdown · JSON · MCP Author: Che Dong Under GNU General Public License
2026-09-17 12:21 @216.73.216.243
CrawledBy Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)