CP(1)

名称
cp - 复制文件和目录

概述
cp [选项]... [-T] 来源 目标
cp [选项]... 来源... 目录
cp [选项]... -t 目录 来源...

描述

从指定的来源文件复制到目标处，或者将多个源文件复制到目标目录中。

必选参数对长短选项同时适用。

-a, --archive
    与 -dR --preserve=all 相同。

--attributes-only
    不要复制文件数据，仅仅复制其属性值。

--backup[=控制参数]
    为每个已存在的目标文件创建一个备份

-b  类似 --backup，但是不接受参数

--copy-contents
    递归模式下复制特殊文件的内容

-d  与 --no-dereference --preserve=links 相同

-f, --force
    如果有一个已存在且无法打开的目标文件，删除之并进行重试（该选项在 -n 选项同时被使用时无效）

i, --interactive
    覆写前进行提示（覆盖先前的 -n 选项）

-H  跟随源文件命令行中显式给出的符号链接

-l, --link
    使用硬链接取代复制

-L, --dereference
    总是跟随源文件中的符号链接

-n, --no-clobber
    不要覆写已有的文件（覆盖先前给出的 -i 选项）

-P, --no-dereference
    永远不要跟随源文件中的符号链接

-p  与 --preserve=mode,ownership,timestamps 相同

--preserve[=属性列表]
    保留指定的属性（默认：模式、从属关系、时间戳），如果可能的话还有额外属性：上下文、链接（links）、xattr、all

--no-preserve=属性列表
    不要保留指定的属性

--parents
    在目标目录下使用完整的源文件名

-R, -r, --recursive
    递归地复制文件

--reflink[=WHEN]
    控制克隆/写入时复制（CoW）副本。详情见下文

--remove-destination
    在尝试打开每个已存在的目标文件之前对其进行删除（和 --force 行为相反）

--sparse=WHEN
    控制稀疏文件的创建。详情见下文

--strip-trailing-slashes
    移除每个源文件参数后的任何末尾斜杠

-s, --symbolic-link
    使用符号链接代替复制

-S, --suffix=后缀名
    使用给定名称代替常用备份后缀名

-t, --target-directory=目录
    将所有源文件参数给出的内容复制到目标目录中

-T, --no-target-directory
    将目标文件当作普通文件对待（而不是目录）

-u, --update
    仅在源文件比目标文件新，或者目标文件不存在的情况下复制

-v, --verbose
    解释正在发生的情况

-x, --one-file-system
    停留在当前文件系统中

-Z  将目标文件 SELinux 安全上下文设置为默认类型

--context[=CTX]
    类似 -Z，或者如果给定了上下文（CTX）那么将 SELinux 或者 SMACK 安全上下文设置为给定值

--help
    显示此帮助信息并退出

--version
    显示版本信息并退出

默认情况下，程序会使用一种粗糙的启发式算法探测源文件是否是稀疏的，若判定为稀疏，则目标文件也会以稀疏形式创建。这个行为可以通过 --sparse=auto 指定。若指定 --sparse=always，将在源文件包含足够多内容为零的字节序列时将其视作稀疏文件。使用 --sparse=never 以禁止创建稀疏文件。

当指定了 --reflink[=always] 时，进行轻量级复制，其中的数据块仅在被修改时进行复制。如果这样的复制失败，或无法实行，或者指定了 --reflink=auto 时，程序将会回退到标准复制操作。使用 --reflink=never 可以确保永远进行标准复制。

备份的后缀为“~”，除非设置了 --suffix 或者 SIMPLE_BACKUP_SUFFIX。版本控制方式可以使用 --backup 选项或者 VERSION_CONTROL 环境变量进行指定。可用的值如下：

none, off
    永远不制作备份（即使给出了 --backup ）

numbered, t
    制作编号的备份

existing, nil
    如果已编号副本存在则编号，否则采用简单方式

simple, never
    总是制作简单备份

作为一个特例，cp 将在同时给出 force 选项与 backup 选项，并且源文件和目标文件是同一个已存在普通文件的情况下制作备份副本。

作者
由 Torbjorn Granlund、David MacKenzie 和 Jim Meyering 编写。

报告错误
GNU coreutils 的在线帮助： <https://www.gnu.org/software/coreutils/>
请向 <https://translationproject.org/team/zh_CN.html> 报告翻译错误。

版权
Copyright © 2022 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.

参见
完整文档请见： <https://www.gnu.org/software/coreutils/cp>
或者在本地使用： info '(coreutils) cp invocation'