[TOC] >[success] # cp 复制粘贴 1. `cp` - **copy 文件复制**,使用`cp [选项] 源文件 文件/目录`,作用将源文件复制至目标文件,或将多个源文件复制至目标目录。 >[info] ## 可选参数 1. `-r` -- **用来复制文件使用** 表示递归式复制目录,即复制目录下的所有层级的子目录及文件 2. `-p` -- **复制的时候保持属性不变**,也就是复制出来的文件创建时间等是一样的(包括所有者、所属组、权限和时间) 3. `-d` -- 复制的时候保持软连接(快捷方式),如果不加`-d `复制的内容则为软连接指向的文件 4. `-i` -- 覆盖文件前提示`cp -i 文件1 文件2` 如果文件2已经存在,则会覆盖,`-i`会让用户进行输入`y`确认覆盖 5. `-a`:相当于 -d、-p、-r 选项的集合相当于 **可以复制软连接并且可以复制文件夹保持原文件属性** >[danger] ##### 复制普通文件 1. `cp 源文件 新文件` -- 列如 `cp qq.txt wx.txt` 将`qq.txt `文件复制并在同级目录生成一个`wx.txt `文件,如果不使用`-i` 那么当前目前如果存在`wx.txt`则会覆盖使用`i`会询问用户进行输入`y`确认覆盖 >[danger] ##### 普通文件复制到某个路径中 1. `cp 源文件 路径位置` * **只指定路径**,例如`cp qq.txt mycp/` 此时并没有具体指定复制到该路径下复制文件的名字,则会在`mycp`路径下复制出一个源文件同名文件即`mycp/qq.txt` * 指定路径并且新名字,例如`cp qq.txt mycp/wx.txt` 则此时在`mycp`文件下复制出一个`wx.txt` 文件 >[danger] ##### 复制多个文件在文件夹中 1. `cp 文件1 文件2 目标文件夹`复制多个文件转移到某个文件夹中。例如`cp a.txt b.txt mycp/` 将`a b`两个文件复制到`mycp `文件夹中 >[danger] ##### -r 复制整个文件夹 1. **cp -r sourceFolder targetFolder** (功能描述:递归复制整个文件夹) 2. '**cp -r 文件夹1 文件夹2**' -- 想复制整个文件夹内容 到另外一个文件中,例如'**cp -r mycp/ dir/**' 将会吧mycp 文件夹中的内容复制到 dir文件夹中