跳到主要内容

Linux cp 命令 - 复制文件或目录

介绍

cp(英文全拼:copy)命令用于复制文件或目录。

可以将多个文件复制到一个具体的文件名或一个已经存在的目录下,也可以同时复制多个文件到一个指定的目录中。

语法

cp [options] source dest
cp [options] source... directory

选项

  • -a:此选项通常在复制目录时使用,它保留链接、文件属性,并复制目录下的所有内容。其作用等于 dpR 参数组合。
  • -b:覆盖已存在的文件目标前将目标文件备份。
  • -d:当复制符号链接时,把目标文件或目录也建立为符号链接,并指向与源文件或目录链接的原始文件或目录。
  • -f:覆盖已经存在的目标文件而不给出提示。
  • -i:与 -f 选项相反,在覆盖目标文件之前给出提示,要求用户确认是否覆盖,回答 "y" 时目标文件将被覆盖。
  • -p:除复制文件的内容外,还把修改时间和访问权限也复制到新文件中。
  • -r:递归复制文件和目录。若给出的源文件是一个目录文件,此时将复制该目录下所有的子目录和文件。
  • -l:对源文件建立硬链接,而非复制文件。
  • -s:对源文件建立符号链接,而非复制文件。
  • -v:详细显示 cp 命令执行的操作过程。

示例

复制文件(源文件 testfile1,目标文件 testfile2)

cp testfile1 testfile2

将文件 testfile1 复制到目录 dir 里

cp testfile1 dir/

同时将文件 testfile1 和 testfile2 复制到目录 dir 里

cp testfile1 testfile2 dir/

复制目录

cp -r dir1 dir2