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
下一篇 2018-04-03

相关推荐

  • N31-第二周作业—文件的管理

    1、Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示。
    2、bash的工作特性之命令执行状态返回值和命令行展开所涉及的内容及其示例演示。
    3、请使用命令行展开功能来完成以下练习:
    (1)、创建/tmp目录下的:a_c, a_d, b_c, b_d
    (2)、创建/tmp/mylinux目录下的:
    mylinux/
    ├── bin
    ├── boot
    │   └── grub
    ├── dev
    ├── etc
    │   ├── rc.d
    │   │   └── init.d
    │   └── sysconfig
    │   └── network-scripts
    ├── lib
    │   └── modules
    ├── lib64
    ├── proc
    ├── sbin
    ├── sys
    ├── tmp
    ├── usr
    │   └── local
    │   ├── bin
    │   └── sbin
    └── var
    ├── lock
    ├── log
    └── run
    4、文件的元数据信息有哪些,分别表示什么含义,如何查看?如何修改文件的时间戳信息。
    5、如何定义一个命令的别名,如何在命令中引用另一个命令的执行结果?
    6、显示/var目录下所有以l开头,以一个小写字母结尾,且中间至少出现一位数字(可以有其它字符)的文件或目录。
    7、显示/etc目录下,以任意一个数字开头,且以非数字结尾的文件或目录。
    8、显示/etc目录下,以非字母开头,后面跟了一个字母以及其它任意长度任意字符的文件或目录。
    9、在/tmp目录下创建以tfile开头,后跟当前日期和时间的文件,文件名形如:tfile-2016-05-27-09-32-22。
    10、复制/etc目录下所有以p开头,以非数字结尾的文件或目录到/tmp/mytest1目录中。
    11、复制/etc目录下所有以.d结尾的文件或目录至/tmp/mytest2目录中。
    12、复制/etc/目录下所有以l或m或n开头,以.conf结尾的文件至/tmp/mytest3目录中。

    2018-07-05
  • LVS调度方法及nginx模块简介

    LVS调度方法及nginx模块简介

    Linux笔记 2018-06-05
  • Linux系统网络管理

    本机索引: 一、基本网络配置 二、主机、网卡名称管理 三、网卡别名 四、Bonding技术 五、实现网络组 六、Linux网络管理常用命令   一、基本网络配置: 将Linux主机接入网络,需要配置网络相关设置 一般包括以下内容: 主机名 IP/netmask 路由:默认网关 DNS服务器: 主DNS服务器 次DNS服务器   网络配置文…

    2018-05-03
  • 今天开始,重新学习

    混了这么多年,才发现还是要学习,要有本事才能混的好些。今天开始,重新学习,为了有好的将未来。为了能够多挣点钱。。。。。。

    Linux笔记 2018-06-20
  • Docker容器一

    容器的安装,镜像的管理,镜像的制作

    2018-07-31
  • Linux之下的文件权限

    文件的属性 文件属性 Linux下的文件类型 -:普通文件 d: 目录文件 b: 块设备 c: 字符设备 l: 符号链接文件 p: 管道文件pipe s: 套接字文件socket …… 权限表示法 文件的权限 在文件权限中,一共有十字符,第一个字符为文件的类型。接下来的字符分为三组,分别是文件所有者、所属组、其他人。每一组分别由rwx 三个参数组合。其中,r…

    Linux笔记 2018-04-08