• 每天一个Linux命令(7):文件目录操作命令——cp命令


    cp命令是用来复制文件或目录的,该命令是Linux中常用的命令之一。

    1、基本使用格式

    # cp [OPTION]... [-T] SOURCE DEST
    # cp [OPTION]... SOURCE... DIRECTORY
    # cp [OPTION]... -t DIRECTORY SOURCE...

    2、常用选项

    Options Function
    -i 交互式复制,即覆盖之前提醒用户确认
    -f 强制覆盖文件目标
    -d 复制符号链接文件本身,而非其指向的源文件
       -a    -dR --preserve=all, archive,用于实现归档
    -s 给源文件创建一个符号链接文件
    --preserve=

    复制源文件时保护源文件的一些属性,这些属性包括

    mode: 权限

    ownership: 时间戳

    timestamp: 时间戳

    context: 安全标签

    xattr: 扩展属性

    links: 符号链接

    all: 上述所有属性

    3、命令功能

      cp命令分为单源复制和多源复制,并且目标文件的不同,所实现的功能不同,下面具体来看下cp命令的功能:

    Source(L)/DEST(C) 文件 目录
    文件

    只能为单源复制,并且如果该目标文件存在时,则会覆盖目标文件;

    当目标文件不存在时,则事先创建此文件,并复制源文件的数据流至DEST中;

    可以为单源和多源复制。在复制的过程中则先在DEST目录下创建一个与源文件同名的文件,并复制其数据流。
    目录 错误

    可以为单源和多源复制。

    当目标目录存在时,在复制的过程中则先在DEST目录下创建一个与源文件同名的目录,并复制其数据流。

    当目标目录不存在时,则事先创建此目录,并复制源文件的数据流至DEST中

    4、应用示例

    (1)单源复制

      a. 目标为文件时

    # cp /etc/yum.repos.d/CentOS-Base.repo Base.repo     该目标文件在当前工作路径下不存在

      在执行上面的命令时,当前工作路径下没有Base.repo文件,所以在复制的过程中会事先创建Base.repo文件,然后将源文件中的数据流存入目标文件中。

      当再次执行上面的复制命令是就会出现下面的情况:

      这是因为目标文件是一个已经存在的文件,在复制的过程会询问用户是否覆盖目标文件。

      b. 目标为目录时

    # cp /etc/fstab ./public/

      在当前工作目录下的public目录下,不存在和源文件同名的文件,所以在复制的过程中,因为没有给出目标文件名,所以系统会默认先创建一个和源文件同名的文件,然后将源文件的中数据流直接复制过来。

    (2)多源复制

      在多源复制中DEST只能为目录。

      a. 源为文件

    # cp ifconfg initial public/

      b. 源为目录

    # cp -r 11/ music/ public/

      当源为目录的时候,此时要使用-r参数递归的将源目录复制到目标目录下。当然在单源复制中,源也可以为目录,但目标必须为目录。

      c. 源为文件和目录

    # cp -r ifconfg initial public/ music/

      从上面可以看出,cp命令在使用的过程中,不管参数有多少,都会将最后一个参数作为DEST。

    (3)利用cp命令创建链接文件

    # cp -s /etc/fstab fstab.link

    总结

      cp命令在系统中是cp -i命令的别名,所以在目标文件存在时会出现交互信息。在BASH中使用cp命令会出现交互信息,但是在shell中使用cp命令不会出现交互信息,这一点一定要注意。

  • 相关阅读:
    字符编码之间的转换 utf-8 , gbk等,(解决中文字符串乱码)
    信号分帧的三种实现方法及时间效率对比
    倒谱Cepstrum本质的理解
    Matlab 中 arburg 函数的理解与实际使用方法
    包络提取的两种方法-希尔伯特变换 和 局部峰值检测
    卡尔曼滤波的自我理解
    随机生成一个长度为n的数组
    JS 数字取整等操作
    vue 跳转路由新开页
    el-form 相关自定义校验
  • 原文地址:https://www.cnblogs.com/dabric/p/11116891.html
Copyright © 2020-2023  润新知