cp命令
用法:cp [选项]… [-T] 源文件 目标文件
或:cp [选项]… 源文件… 目录
或:cp [选项]… -t 目录 源文件…
将源文件复制至目标文件,或将多个源文件复制至目标目录。
长选项必须使用的参数对于短选项时也是必需使用的。
-a, –archive等于-dR –preserve=all
–backup[=CONTROL为每个已存在的目标文件创建备份
-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=模式,所有权,时间戳
–preserve[=属性列表保持指定的属性(默认:模式,所有权,时间戳),如果
可能保持附加属性:环境、链接、xattr 等
-c same as –preserve=context
–sno-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 copy only when the SOURCE file is newer
than the destination file or when the
destination file is missing
-v, –verbose explain what is being done
-x, –one-file-system stay on this file system
-Z, –context=CONTEXT set security context of copy to CONTEXT
–help显示此帮助信息并退出
–version显示版本信息并退出
默认情况下,源文件的稀疏性仅仅通过简单的方法判断,对应的目标文件目标文件也
被为稀疏。这是因为默认情况下使用了–sparse=auto 参数。如果明确使用
–sparse=always 参数则不论源文件是否包含足够长的0 序列也将目标文件创文
建为稀疏件。
使用–sparse=never 参数禁止创建稀疏文件。
当指定了–reflink[=always] 参数时执行轻量化的复制,即只在数据块被修改的
情况下才复制。如果复制失败或者同时指定了–reflink=auto,则返回标准复制模式。
备份文件的后缀为"~",除非以–suffix 选项或是SIMPLE_BACKUP_SUFFIX
环境变量指定。版本控制的方式可通过–backup 选项或VERSION_CONTROL 环境
变量来选择。以下是可用的变量值:
none, off 不进行备份(即使使用了–backup 选项)
numbered, t 备份文件加上数字进行排序
existing, nil 若有数字的备份文件已经存在则使用数字,否则使用普通方式备份
simple, never 永远使用普通方式备份
有一个特别情况:如果同时指定–force 和–backup 选项,而源文件和目标文件
是同一个已存在的一般文件的话,cp 会将源文件备份。
例: