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. Codehorses T-shirts (map+遍历)

    Codehorses has just hosted the second Codehorses Cup. This year, the same as the previous one, organ ...

  2. Java诞生及优势

    C语言 1972年诞生 贴近硬件,速度快 指针和内存管理重点 C++ 1982年诞生 面向对象 兼容C 图形领域.游戏等 Java 基于C 没有指针和内存管理 可移植,编写一次到处运行,JVM 面向对 ...

  3. 保存vuex状态刷新不消失

    写在App.vue中,所有页面共享此方法 export default { name: "app", components: {}, created() { // 页面每次刷新加载 ...

  4. 使用vuepress搭建GitHub pages静态博客页面

    vuepress官网 vuepress是尤大开发来写文档的静态页面.可以用Markdown 语法,并且也可以使用vue模块化的方式开发页面. vuepress-theme-reco 是另外的开发者开发 ...

  5. MVC里面调用webservice

    调用WebService报错404问题 (转载)   我想在MVC4的项目添加一个webservice文件,访问没问题,但是最后调用方法就报404错误.但是如果我全新ASP.NET 空Web应用程序  ...

  6. Ubuntu18.04

    起因 晚上过来加班···· 问题 物理机安装ubuntu时候遇到报错信息 boot failed: please change disks and press a key to continue ht ...

  7. pwnable之random

    这题只要多调试几次就会发现其产生的随机数是固定的一个值,那么就可以通过这个随机值和0xdeadbeef反推出我们要输入的数据, 最后附上这题的flag:flag:Mommy, I thought li ...

  8. Vue cli4 图片地址引入的几种方式

    五种图片地址引入方式 @开头,它也会作为一个模块请求被解析.它的用处在于Vue CLI默认会设置一个指向项目根目录/src的别名@

  9. ui自动化--鼠标操作ActionChains

    需要先引入鼠标操作模块:from selenium.webdriver.common.action_chains import ActionChains 实际上ActionChains这个模块的实现的 ...

  10. python的logging模块及应用

    一.logging日志模块等级 常见log级别从高到低: CRITICAL >ERROR >WARNING >INFO >DEBUG,默认等级为WARNING,即>=WA ...