文章目录

  • Linux文件管理命令
  • cp:复制文件
  • 示例介绍:


Linux文件管理命令

cp:复制文件

作用:文件或目录的复制。
用法:cp [选项]… [-T] 源文件 目标文件
cp [选项]… 源文件… 目录
cp [选项]… -t 目录 源文件…
将<源文件>文件复制至<目标文件>,或将多个<源>复制至<目录>。
主要选项如下。

命令

描述

-a

等同于-dpR 参数一起使用。在复制过程中尽可能保留源文件或目录的属性。

-b

给被覆盖的文件进行备份。例如,将 file1 复制到 file2 时,如果 file2 存在,则把 file2

覆盖掉,用这个参数就能同时生成一个名为 file2~的文件,注意文件名后有“~”作为

结尾

-d

不间接引用符号链接,保持源文件和目标文件之间的硬链接关系。

-f

删除已存在的目标文件。

-i

覆盖已存在的目标文件之前给出警告提示。这是人机交互的选项。

-l

建立文件硬链接,而不是复制。

-p

保存源文件或目录的最后修改时间和模式,如要保持目标目录或文件的属主、组、

权限和最后访问(或修改)时间。

-R

复制目录时,包括此目录下所有的子目录和文件。

-s

建立源文件的符号链接,而不是复制源文件。源文件名必须用绝对路径。

-r

复制目录时,包括此目录下所有的子目录和文件;-r 选项不同于-R 之处在于尝试打

开目的地文件前先删除已存在的目的地文件。

-i

人机交互模式,显示覆盖已存在的文件或目录的警告信息。

-v

在复制之前,输出每个文件的名字。

-Z

–context[=CTX]:设定 SELinux 安全上下文为默认类型或指定为 CTX。如果指定

源文件:指定源文件列表。在默认情况下,cp 命令不能复制目录;如果要复制目录,则 必须使用-R 选项。

目标文件:指定目标文件。当“源文件”为多个文件时,要求“目标文件”为指定的 目录。

示例介绍:

(1)参数-i 的应用示例。

# cp -i Kernel.rpm Plist 
cp:是否覆盖"Plist"?y

上述代码是人机交互参数-i 的运用。在将源文件复制到目标文件时,如果目标文件存在, 则提出警告

(2)参数-a 的应用示例及说明

把源目录复制到另外的一个目标目录,相当于克隆了一个目录,源目录和目标目录所在用 户组、权限及修改或访问时间保持一致。

# cp -a mydir youdir

复制目录 mydir 到 youdir,如果 youdir 目录不存在,则创建,并且把 mydir 中所有的文件 下级子目录都复制到 youdir 目录中。也就是说 mydir 目录的文件和 youdir 是一样的。-a 参数等 同于-dpR,并且源目录和目标目录的属性(用户组、权限、最后访问或修改时间)一致。

(3)参数-b 的应用示例。

把源文件复制为目标文件,并且尝试-b 参数的运用。 # cp fonts.scale fonts.dir 把一个文件复制为另一个文件。

# cp -bi fonts.scale fonts.dir 
cp:是否覆盖"fonts.dir"? y