Important

使用 cp 命令再 Linux 中进行文件的复制

cp 命令

cp 代表copy

不同于单纯的 ctrl Ccp 包括了复制和黏贴两个动作

基本语法

因为复制和黏贴的性质,cp 命令有两个参数(两个路径)

cp #选项 #源 #目标

例子 1:文件>文件夹

文件目标文件夹时:

  • 将源复制,并创建在目标文件夹中
zhoux@westnorth:~/linux_practice/files/copy$ ls -l
total 0
#文件夹内没有文件
zhoux@westnorth:~/linux_practice/files/copy$ cd ../
#返回上一目录
zhoux@westnorth:~/linux_practice/files$ cp 202?.matrix copy/
#将202?.matrix 复制到 copy/ 中
#注意目录都以/结尾
#别忘了通配符的使用
zhoux@westnorth:~/linux_practice/files$ cd ./copy/
zhoux@westnorth:~/linux_practice/files/copy$ ls -l
total 0
-rw-r--r-- 1 zhoux zhoux 0 Dec  4 18:19 2021.matrix
-rw-r--r-- 1 zhoux zhoux 0 Dec  4 18:19 2022.matrix
#切换回copy/文件夹,并列出文件,可以看到文件已经被复制

例子 2:文件>文件

当源是文件,目标也是文件时:

  • 将源复制,并重命名到目标文件(可以更改名字与路径)
zhoux@westnorth:~/linux_practice/files$ cp scRNA.script.R ~/linux_practice/scRNA.copy.R
#scRNA
zhoux@westnorth:~/linux_practice/files$ ls ~/linux_practice/
commands  files  scRNA.copy.R  scripts

cp 命令的选项

-r 选项

和其他一样,都是递归地对目录进行复制,目前作如下理解

  • 先复制目录自己,再复制目录内的所有内容

-p 选项

-p保留原属性,也就是说

  • 一般情况下,cp 命令新创建的文件将记录新建时的时间,而不是 真正创建的时间
  • 在使用 -p 命令后,新创建的文件将保留 记录的属性(可看作保留 metadata)

-f-i 命令

分别为强制执行和交互式执行,和 rm命令很相似

Warning

参数中的可以有多个,而目标只能有一个

  • 当有多个源时,目标只能为文件夹
  • 多个源
  • 当有多个源时,最后一条用空格分隔的路径默认为目标