cp命令:复制文件和目录

【功能说明】

  cp命令可以理解英文单词copy的缩写,其功能为复制文件和目录。

【语法格式】

1  cp    [option]     [source]       [dest]
2 cp   【选项】 【源文件】 【目标文件】

 提示说明:

  1) cp命令以及后面的选项和文件,每个元素之间都至少要有一个空格

【命令参数说明】

参数选项 解释说明
-p 复制文件时保持源文件的所有者、权限信息及时间属性
-d 如果复制的源文件时符号链接,那么仅复制符号链接本身,而保留符号链接所有指向的目标文件或目录
-r 递归复制目录,即复制目录下的所有层级的子目录及文件
-a 等同于上面的 p 、d、r这三个选项的功能的总和
-i 覆盖已有文件前提示用户确认
-t 默认情况下命令格式是 “cp源文件”  “目标文件”,使用 -t 参数可以颠倒顺序,格式变为 “cp -t  目标文件    源文件”

【使用范例】

1. 基础范例

1.1 案例1:无参数和带参数-a的比较

[root@python ~]# cd /test/
[root@python test]# pwd
/test

[root@python test]# ll -h               #查看当前文件的时间属性,大家已自己的为准
total 0
-rw-r--r-- 1 root root 0 Dec 1 03:33 dir1
-rw-r--r-- 1 root root 0 Dec 1 03:33 dir2
-rw-r--r-- 1 root root 0 Dec 1 03:33 dir3
-rw-r--r-- 1 root root 0 Dec 1 03:33 dir4
-rw-r--r-- 1 root root 0 Dec 1 03:33 dir5
-rw-r--r-- 1 root root 0 Dec 1 03:33 file1.txt
-rw-r--r-- 1 root root 0 Dec 1 03:33 file2.txt
-rw-r--r-- 1 root root 0 Dec 1 03:33 file3.txt
-rw-r--r-- 1 root root 0 Dec 1 03:33 file4.txt
-rw-r--r-- 1 root root 0 Dec 1 03:33 file5.txt

[root@python test]# cp file1.txt file4.txt
cp: overwrite ‘file4.txt’? y
[root@python test]# cp -a file1.txt file5.txt
cp: overwrite ‘file5.txt’? y

[root@python test]# ll -h        #再次查看当前文件的时间属性
total 0
-rw-r--r-- 1 root root 0 Dec 1 03:33 dir1
-rw-r--r-- 1 root root 0 Dec 1 03:33 dir2
-rw-r--r-- 1 root root 0 Dec 1 03:33 dir3
-rw-r--r-- 1 root root 0 Dec 1 03:33 dir4
-rw-r--r-- 1 root root 0 Dec 1 03:33 dir5
-rw-r--r-- 1 root root 0 Dec 1 03:33 file1.txt               #file1.txt文件是源文件
-rw-r--r-- 1 root root 0 Dec 1 03:33 file2.txt
-rw-r--r-- 1 root root 0 Dec 1 03:33 file3.txt
-rw-r--r-- 1 root root 0 Dec 1 03:36 file4.txt               #file4在没有使用任何参数
-rw-r--r-- 1 root root 0 Dec 1 03:33 file5.txt               #file5在使用了“-a”参数复制后的,属性不变

可以发现使用了-a参数复制时,文件的时间属性没有任何变化,-a参数的功能包含-p参数保持文件的属性功能。

1.2 案例2:使用 -i 参数的例子

[root@python test]# cp -i file1.txt file5.txt     #使用-i 参数复制文件,会提示是否覆盖文件
cp: overwrite ‘file5.txt’? y
[root@python test]# cp file1.txt file5.txt       #不使用-i参数一样的结果,为什么呢?
cp: overwrite ‘file5.txt’? y
[root@python test]# alias cp                        #使用alias命令查看到cp命令 系统设置了cp -i 的别名了
alias cp='cp -i'

1.3 案例3:使用-r参数复制目录

[root@python test]# cp dir1 dir2                #复制dir1 到dir2,但结果显示跳过目录dir1
cp: omitting directory ‘dir1’
[root@python test]# cp -r dir1 dir2/           #若使用-r参数则复制成功。

[root@python test]# tree dir2                    #查看复制结果
dir2
├── dir1
│   ├── test1
│   │   ├── test1
│   │   ├── test2
│   │   ├── test3
│   │   ├── test4
│   │   └── test5
│   ├── test2
│   │   ├── test1
│   │   ├── test2
│   │   ├── test3
│   │   ├── test4
│   │   └── test5
│   └── test3
│   ├── test1
│   ├── test2
│   ├── test3
│   ├── test4
│   └── test5
├── test1
│   ├── test1
│   ├── test2
│   ├── test3
│   ├── test4
│   └── test5
├── test2
│   ├── test1
│   ├── test2
│   ├── test3
│   ├── test4
│   └── test5
└── test3
├── test1
├── test2
├── test3
├── test4
└── test5

7 directories, 30 files

#提示:

  使用-a参数也可以达到相同的效果,因为-a参数相当于“dpr” 三个参数

cp命令:复制文件和目录的更多相关文章

  1. (五)cp命令复制文件或者目录

    一.cp的含义.功能及命令格式 cp(英文copy的缩写)命令可以将一个文件或者目录从一个位置复制到另外一个位置.cp的功能就是将一个文件复制成 一个指定的目的文件或者复制到一个指定的目录中,兼具复制 ...

  2. cp:复制文件和目录

    cp 命令,主要用来复制文件和目录,同时借助某些选项,还可以实现复制整个目录,以及比对两文件的新旧而予以升级等功能. cp 命令的基本格式如下:cp [选项] 源文件 目标目录/文件 选项: -a:相 ...

  3. Linux命令:cp (copy)复制文件或目录

    复制文件,只有源文件较目的文件的修改时间新时,才复制文件     cp -u -v file1 file2 .将文件file1复制成文件file2     cp file1 file2 .采用交互方式 ...

  4. 21-Ubuntu-文件和目录命令-复制文件和目录-cp

    cp 将给出的文件或目录复制到另一个文件或目录,相当于DOS下的copy命令 选项 含义 -f 已经存在的目标文件直接覆盖,不提示 -i 覆盖文件前提示 -r 若给出的源文件是目录文件,则cp将递归复 ...

  5. Linux 中 cp 命令(文件复制)

    cp命令用来将一个或多个源文件或者目录复制到指定的目的文件或目录.它可以将单个源文件复制成一个指定文件名的具体的文件或一个已经存在的目录下.cp命令还支持同时复制多个文件,当一次复制多个文件时,目标文 ...

  6. cp命令覆盖文件时不用按Y来确认的方法

    我们在Linux下使用cp命令复制文件时候,有时候会需要覆盖一些同名文件,覆盖文件的时候都会有提示:需要不停的按Y来确定执行覆盖.文件数量不多还好,但是要是几百个估计按Y都要吐血了,于是折腾来半天总结 ...

  7. 复制文件或目录命令 - cp

    1) 命令名称:cp 2) 英文原意:copy 3) 命令所在路径:/bin/cp 4) 执行权限:所有用户 5) 功能描述:复制文件或目录 语法: cp -rp [原文件或目录][目标目录] -r ...

  8. Linux命令(20)linux服务器之间复制文件和目录

    linux的scp命令: scp就是secure copy的简写,用于在linux下进行远程拷贝文件的命令,和它类似的命令有cp,不过cp只是在本机进行拷贝不能跨服务器. 有时我们需要获得远程服务器上 ...

  9. linux 的 scp 命令 可以 在 linux 之间复制 文件 和 目录

    转自:http://blog.csdn.net/snlying/article/details/6184102 Linux系统中scp命令的用法. scp就是secure copy的简写,用于在lin ...

随机推荐

  1. JS实现斐波那契数列的五种方式

    下面是五种实现斐波那契数列的方法 循环   function fibonacci(n){ var res1 = 1; var res2 = 1; var sum = res2; for(var i = ...

  2. EasyPoi导出Excel

    这几天一直在忙工作中的事情,在工作中有一个问题,可能是因为刚开始接触这个EasyPoi,对其也没有太多的理解,在项目中就使用了,有一个需求,是要导出项目中所有的表格,今天就对这个需求进行分析和实现吧; ...

  3. Java中的String字符串及其常用方法

    字符串(String) 文章目录 字符串(String) 直接定义字符串 常用方法 字符串长度 toLowerCase() & toUpperCase()方法 trim()方法去除空格 判空 ...

  4. 兼容H5页面的js

    (function (doc, win) { let docEl = doc.documentElement; let resizeEvt = 'orientationchange' in windo ...

  5. HTTP走私

    干货 https://paper.seebug.org/1048/

  6. (006)增加Blazor WebAssembly子站,推荐一个可视化linux ssh客户端FinalShell

    增加一个Blazor WebAssembly子站,并添加来回链接. 同时推荐一个好用的ssh客户端:FinalShell,windows用户再也不怕linux黑窗口不会用了:) * 支持直接命令行; ...

  7. Linux:系统用户和用户组

    一.用户介绍 用户分为三类,超级用户.虚拟用户.普通用户:系统通过用户的uid识别用户:超级用户uid=0,虚拟用户uid=1-599,普通用户的uid=500-65535 用户和组相关配置文件/et ...

  8. JVM-虚拟机执行子系统

    类的加载由JVM执行引擎来完成 早期--编译期:源代码文件*.java -> 词法分析器 -> tokens流 -> 语法分析器 -> 语法树/抽象语法树 -> 语义分析 ...

  9. three.js学习3_相机相关

    Three.Camera Camera是所有相机的抽象基类, 在构建新摄像机时,应始终继承此类. 常见的相机有两种类型: PerspectiveCamera(透视摄像机)或者 Orthographic ...

  10. 基于Ant Design Vue封装一个表单控件

    开源代码 https://github.com/naturefwvue/nf-vue3-ant 有缺点本来是写在最后的,但是博文写的似乎有点太长了,估计大家没时间往下看,于是就把有缺点写在前面了,不喜 ...