cp:复制文件或者目录

前言:

  cp命令用来复制文件或者目录,是Linux系统中最常用的命令之一。一般情况下,shell会设置一个别名,在命令行下复制文件时,如果目标文件已经存在,就会询问是否覆盖,不管你是否使用-i参数。但是如果是在shell脚本中执行cp时,没有-i参数时不会询问是否覆盖。这说明命令行和shell脚本的执行方式有些不同。

名称

   cp - copy files and directories将源文件复制至目标文件,或将多个源文件复制至目标目录

使用方法

cp [选项]... [-T] 源 目的

或:cp [选项]... 源... 目录

        或:cp [选项]... -t 目录 源...

描述

  

  -a, --archive    等于-dR --preserve=all

--backup[=CONTROL    为每个已存在的目标文件创建备份

  -b                类似--backup 但不接受参数

--copy-contents        在递归处理是复制特殊文件内容

  -d                等于--no-dereference --preserve=links

  -f, --force        如果目标文件无法打开则将其移除并重试(当 -n 选项

存在时则不需再选此项)

  -i, --interactive        覆盖前询问(使前面的 -n 选项失效)

  -H                跟随源文件中的命令行符号链接

  -l, --link            链接文件而不复制

  -L, --dereference   总是跟随符号链接

  -n, --no-clobber   不要覆盖已存在的文件(使前面的 -i 选项失效)

  -P, --no-dereference   不跟随源文件中的符号链接

  -p                等于--preserve=模式,所有权,时间戳

     --preserve[=属性列表   保持指定的属性(默认:模式,所有权,时间戳),如果

可能保持附加属性:环境、链接、xattr 等

  -R, -r, --recursive  复制目录及目录内的所有项目

实战演示:

复制单个文件到目标目录,文件在目标文件中不存在

   命令:

  cp 2.txt  lcp/

将2.txt文件到lcp目标目录中。

 [root@moban data1]# ll                    查看当前文件
total
-rw-r--r--. root root Feb : .txt      需要复制的文件
drwxr-xr-x. root root Feb : lcp        目标文件
[root@moban data1]# cp .txt lcp/              使用cp命令来将目标文件复制到目标路径内
[root@moban data1]# cd lcp/                  打开lcp文件来查看一下是否将2.txt成功复制
[root@moban lcp]# ll
total
-rw-r--r--. root root Feb : .txt

说明:

 复制文件时间相同(带属性的文件复制)在没有带-a参数时,两个文件的时间是不一样的。在带了-a参数时,两个文件的时间是一致的。

目标文件存在时,会询问是否覆盖

  命令:

     cp 2.txt lcp/

说明:刚才已经复制过一遍了。那么lcp文件夹下2.txt已经存在,我们这次在用这个命令复制一下,他会提示覆盖并且需要你确认。

 [root@moban lcp]# cd ..          使用cd ..命令可以返回上一级
[root@moban data1]# cp .txt lcp/
cp: overwrite `lcp/.txt'? y

说明:

目标文件存在时,会询问是否覆盖。这是因为cp是cp -i的别名。目标文件存在时,即使加了-f标志,也还会询问是否覆盖。

【初级】linux cp 命令详解及使用方法实战的更多相关文章

  1. 【初级】linux rm 命令详解及使用方法实战

    rm:删除命令 前言: windows中的删除命令大家都不陌生,linux中的删除命令和windows中有一个共同特点,那就是危险,前两篇linux mkdir 命令详解及使用方法实战[初级]中我们就 ...

  2. 【初级】linux pwd 命令详解及使用方法实战

    pwd:查看当前工作目录 前言: Linux中用 pwd 命令来查看”当前工作目录“的完整路径,就是经常提及的所在目录,多用在生产环境多级目录中查看当前所在路径,使用此命令能给运维人员/操作人员带来很 ...

  3. 【初级】linux mkdir 命令详解及使用方法实战

    mkdir命令详解及使用方法实战 名称 MKDIR 是 make directories 的缩写 使用方法 mkdir [选项(如-p)] ...目录名称(及子目录注意用分隔符隔开)...    如使 ...

  4. 【初级】linux mv 命令详解及使用方法实战

    mv:移动文件或者将文件改名 前言: mv是move的缩写,顾名思义是移动.它的功能既能移动文件/文件夹,又可以用来改名,经常用来做文件的备份,比如再删除之前,先给文件做备份(保护数据)也是linux ...

  5. Linux cp命令详解

    Linux cp命令 Linux cp命令主要用于复制文件或目录,将源文件复制至目标文件,或将多个源文件复制至目标目录 用法: cp [选项]... [-T] 源文件 目标文件 cp [选项]... ...

  6. 复制档案或目录 linux cp命令详解

    cp (复制档案或目录) [root@linux ~]# cp [-adfilprsu] 来源档(source) 目的檔(destination)[root@linux ~]# cp [options ...

  7. linux cp 命令详解

    /home/lee#cp --help 用法:cp [选项]... 来源 目的地 或:cp [选项]... 来源... 目录 或:cp [选项]... --target-directory=目录 来源 ...

  8. 【Linux 命令】cp 命令详解

    Linux 命令之 cp 命令详解 一.cp 命令简介 cp 命令主要用于复制文件或目录.即用来将一个或多个源文件或者目录复制到指定的目的文件或目录. cp 命令可以将单个源文件复制成一个指定文件名的 ...

  9. [转]dd命令、cp命令详解+dd命令、cp命令对比 ---delong

    出处:http://blog.csdn.net/sun_app/article/details/18263299 1.dd命令详解 1)中文man手册dd的解释 NAME       dd - 转换和 ...

随机推荐

  1. T-SQL编程 —— 用户自定义函数(标量函数)

    用户自定义函数 在使用SQL server的时候,除了其内置的函数之外,还允许用户根据需要自己定义函数.根据用户定义函数返回值的类型,可以将用户定义的函数分为三个类别: 返回值为可更新表的函数 如果用 ...

  2. LINQ之路 9:LINQ to SQL 和 Entity Framework(上)

    在上一篇中,我们从理论和概念上详细的了解了LINQ的第二种架构“解释查询”.在这接下来的二个篇章中,我们将使用LINQ to SQL和Entity Framework来实践“解释查询”,学习这些技术的 ...

  3. Docker安装ruby2.1

    # sudo apt-get install Python-software-properties# sudo apt-add-repository ppa:brightbox/ruby-ng# su ...

  4. 浅谈一下关于iscroll的使用心得

    因为最近的项目所有页面老板想做成苹果原生那种上下拉动有回弹效果的体验,浏览器自带是没有这种功能的,自己写的话兼容性可能会出大问题,要适配安卓的各种机型实在是难,所以我还是选择去使用移动端相对比较稳定的 ...

  5. PHP5.5.13 + Apache2.4.7安装配置流程详解

    ---恢复内容开始--- 自学PHP的这段时间里,真是倍感辛酸,相信广大的菜鸟们应该很我感同身受吧,在查阅了网上和众多数资料后,总结出来想当比较全面的安装方法,拿出来与广大的编程爱好者一起分享哈. 首 ...

  6. 转:Eclipse快捷键 10个最有用的快捷键

    Eclipse快捷键 10个最有用的快捷键 Eclipse中10个最有用的快捷键组合  一个Eclipse骨灰级开发者总结了他认为最有用但又不太为人所知的快捷键组合.通过这些组合可以更加容易的浏览源代 ...

  7. java父类与接口有相同的方法

    这是java多态的一个体现,如果一个类classA继承了类classB,有实现了接口interfaceA,并且接口中有方法funA(),且父类classB中也有funA(),那么对于classA来说既 ...

  8. Linux文件权限查看及修改命令chmod

    查看权限 Linux文件访问权限分为可读,可写和可执行三种. 可用ls -l命令查看,例: ls -l或者 ll 显示为 -r--r--r--. 1 root root 21 Jan 5 23:02 ...

  9. Forward和Redirect的区别

    一:间接请求转发(Redirect) 二:直接请求转发(Forward) 用户向服务器发送了一次HTTP请求,该请求可能会经过多个信息资源处理以后才返回给用户,各个信息资源使用请求转发机制相互转发请求 ...

  10. sqlite字段属性删除方法

    Sqlite 不支持直接修改字段的名称. 我们可以使用别的方法来实现修改字段名. 1.修改原表的名称 ALTER TABLE table RENAME TO tableOld; 2.新建修改字段后的表 ...