Linux基础命令——cp简介

问世间情为何物,直教人生死相许

QQ拼音截图未命名21

  • 单源复制:cp[OPTION]… [-T] SOURCE(源,一个文件) DEST(目标)
    • 如果DEST不存在:则复制为两步,先创建此文件(或文件夹),并将源文件(或文件夹)里的数据填充到该文件(或文件夹)中
    • 图片2
    •  如果DEST存在:
      • 如果DEST是非目录文件,则覆盖目标文件,直接回车等于取消命令,需要输入“y”
      • 如果DEST是目录文件,则先在DEST目录下创建一个与源文件同名的文件
      • 图片2
  • 多源复制:cp[OPTION]… .. DIRECTORY;cp [OPTION]… -t DIRECTORY SOURCE…(少用)
    • 如果源是多个文件
      • DEST不存在或为文件:错误
      • 图片2
      • 如果DEST是目录文件:分别复制每一个文件至目标目录中,并保持原名
    •  如果源是目录(必须使用-r)
      • 目标不存在:
        • cp -r /game/sheng /root/sheng4,将/sheng复制到/root下并且改名为sheng4目录,/sheng4之前是没有的
      • 如果DEST存在:
        • 如果DEST是非目录文件,错误
        • 如果DEST是目录文件,在目标目录文件夹下新建与原目录同名的目录,并将SRC目录中的内容填充到新目录中
          • 注意:如果源目录名和目标目录中的有些子目录名相同,这些相同名字的目录中,两两会合并为一个目录并且数据为并集
          • 图片2
  • cp的选项:
    • -i:交互式复制,即覆盖之前提醒用户确认是否覆盖(在root用户下操作,cp别名成了cp -i,避免root误操作,普通用户没有别名)
    • -v:显示复制的过程(一般拷贝较大文件时)
    • -f:强制覆盖目标文件,当一个普通用户对目录拥有完全的控制权限(例如自己的家目录),可以对目录下其他用户的包括root的文件进行rm操作,和强制覆盖cp -f操作(强制覆盖实质上是先删除后复制文件)
    • 图片2
    • -r| -R:递归复制目录到目标
    • -a | –archive归档复制,用于备份,相当于 :-dR –preserve=all
    • -d:–no-dereference –preserv=links,在复制软连接的时候,名字是软连接的名字,数据则是真实文件的数据,此选项表示不复制原文件,只复制链接名
    • 图片2
    • –preserve=mode:权限 | timestamp:时间戳 | ownership:所属主组 | all:全部,在复制的时候文件的元数据的时间戳所属主组等都有可能发生变化,此选项能在复制的时候保留源文件的制定的属性
    • -p:等同–preserve=mode,ownership,timestamp
    • 注意:复制文件的时保留元数据与权限有关系,权限不够时是不能保留其元数据信息的
    • 图片2
    • 注意: 在复制的时候,cp -r /dir1/dir2/.*/dir3,这样会把dir1中的内容全部复制到dir3中,因为.*匹配到了..

本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/94805

(0)
DPingDPing
上一篇 2018-04-03 11:48
下一篇 2018-04-03 13:24

相关推荐

  • 参加马哥教育面授班

    很兴奋,今天是开班的第6天了,课程的具体安排为,1、3、5上课,2、4、6实操课。课堂上目前是王老师授课,讲的都是满满的干货,很详细。让我再次确信参加这次培训不会有错。 面授班与在网络学习,我觉得学习效果差别还是蛮大的。参加面授班能很好的约束我的行为,不会出现学着学着就打开游戏或看电影了,学习效率很高,哈哈。初次见到马哥教育的各个老师发现都很平易近人,学习上…

    Linux笔记 2018-07-21
  • 修改Centos7的网卡命名方式及网卡的相关配置

    修改主机名centos6vim /etc/sysconfig/network永久有效hostname newname 立即临时生效也可以存网关,但优先级低于网卡配置文件GATEWAY=**centos7 /etc/hostname修改主机名hostnamectl set-hostname newname修改主机名直接生效 /etc/hosts :添加域名对应…

    Linux笔记 2018-05-03
  • AWK

    ### awk awk分为nawk,gawk 我们shell中常用的awk 其版本是gawk “`AWK会把file中的每一行(记录/可以指定分隔符),读入空间中并默认以空白(TAB\space\\n)等分割成几个字段,每个字段用$#表示$0表示整行本身“` awk [Option] ‘program’ file option -F:…

    Linux笔记 2018-05-20
  • liniux课程第一周总结

    第一天课程内容 MBR分区类型:主分区:1-4,一块硬盘最多4个主分区,不可以分小区,可以用来启动操作系统(系统分区),直接建文件系统,存放数据扩展分区:一块硬盘最多一个扩展分区,可以没有,加主分区最多4个,不能创建文件系统,可以再划分更小的分区(即逻辑分区)逻辑驱动器(分区):可以创建文件系统,存放数据 系统分区:启动操作系统的分区启动分区:安装操作系统的…

    Linux笔记 2018-04-01
  • rpm指令详解

    程序包管理器: 功能:将编译好的应用程序的各组成文件打包成一个或几个程序包文件,从而更方便地实现程序包的安装、升级、卸载和查询等管理操作;   1、程序包的组成清单(每个程序包都单独实现);         文件清单          安装或卸载时运行的脚本   2、数据库(公共)        程序包的名称和版本;       依赖关系;       功能…

    Linux笔记 2018-03-30
  • if,case,for 脚本练习

    shell脚本练习

    2018-05-06