Linux cp 命令

Linux cp 命令

非常重要,运维必用命令

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

语法

cp [options] source dest

cp [options] source... directory

参数说明

  • -a:此选项通常在复制目录时使用,它保留链接、文件属性,并复制目录下的所有内容。其作用等于dpR参数组合。
  • -d:复制时保留链接。这里所说的链接相当于 Windows 系统中的快捷方式。
  • -f:覆盖已经存在的目标文件而不给出提示。
  • -i:与 -f 选项相反,在覆盖目标文件之前给出提示,要求用户确认是否覆盖,回答 y 时目标文件将被覆盖。
  • -p:除复制文件的内容外,还把修改时间和访问权限也复制到新文件中。
  • -r:若给出的源文件是一个目录文件,此时将复制该目录下所有的子目录和文件。
  • -l:不复制文件,只是生成链接文件。

实例

目录操作特别注意层级关系,到底是包含当前目录,还是当前目录下的所有文件

使用指令 cp 将当前目录 test/ 下的所有文件复制到新目录 newtest 下,输入如下命令:

$ cp –r test/ newtest          

注意:用户使用该指令复制目录时,必须使用参数 -r 或者 -R

Linux 将一个文件夹的所有内容拷贝到另外一个文件夹

cp 命令使用 -r 参数可以将 packageA 下的所有文件拷贝到 packageB 中:

cp -r /home/packageA/* /home/cp/packageB/

将一个文件夹复制到另一个文件夹下,以下实例 packageA 文件会拷贝到 packageB 中:

cp -r /home/packageA /home/packageB

运行命令之后 packageB 文件夹下就有 packageA 文件夹了。

下面四个命令结果相同,都是递归拷贝 packageA 文件及其任意层的结构到 packageB 中:

cp -r /home/packageA /home/packageB
cp -r /home/packageA /home/packageB/
cp -r /home/packageA/ /home/packageB
cp -r /home/packageA/ /home/packageB/

下面两个命令结果相同,都是不拷贝 packageA 文件,只递归拷贝其任意层的子结构到 packageB 中:

cp -r packageA/* packageB
cp -r packageA/* packageB/
posted @ 2023-04-09 22:47  红尘过客2022  阅读(216)  评论(0编辑  收藏  举报