Linux 命令之 cp 命令详解


一、cp 命令简介

cp 命令主要用于复制文件或目录。即用来将一个或多个源文件或者目录复制到指定的目的文件或目录。

cp 命令可以将单个源文件复制成一个指定文件名的具体的文件或一个已经存在的目录下。

cp 命令支持同时复制多个文件,当一次复制多个文件时,目标文件参数必须是一个已经存在的目录,否则将出现错误。


二、cp 命令语法

cp [-options] source_file dest_file
  • source_file:源文件,制定源文件列表。cp 命令默认情况下不能复制目录,除非使用 -r/-R选项。

  • dest_file:目标文件,指定目标文件。当“源文件”为多个文件时,要求“目标文件”为指定的目录。


三、参数说明:

  • -a :等于 “dpR” 参数组合,通常在复制目录时保留链接、文件属性,并复制目录下的所有内容。
  • -b:覆盖已存在的文件目标前将目标文件备份;
  • -d :复制时保留符号链接。
  • -f :强行复制文件或目录,覆盖已经存在的目标文件而不给出提示。
  • -i :与-f选项相反,在覆盖目标文件之前给出提示,要求用户确认是否覆盖。
  • -l :不复制文件,只是生成源文件的硬链接文件。
  • -p :复制文件时保留源文件或目录的属性。
  • -r :递归复制目录,即复制该目录及其所有的子目录和文件。
  • -R :同 -r 选项参数。
  • -s:对源文件建立符号连接,而非复制文件;
  • -S:在备份文件时,用指定的后缀“SUFFIX”代替文件的默认后缀;
  • -u:同步复制源文件文件,只在源文件更新时或目标文件不存在时复制。
  • -v:详细显示命令执行的操作。

四、实例

1、复制文件
格式:
$ cp source_file dest_file
$ cp source_folder/*.* dest_folder
示例:
$ cp 123.tar /root/abc
$ cp *.tar /root/abc
  • cp 命令复制文件到目标文件,同名则会覆盖目标文件的内容,该目标文件的内容将被破坏。
  • cp 命令复制文件到目标文件,不同名则使用目标文件名,但目标文件内容变为源文件内容。
  • 文件路径可以是绝对路径名,也可以是相对路径名。通常会用到当前目录.或上一级目录..的形式。
2、复制目录
格式:
$ cp -r source_folder dest_folder
$ cp -R source_folder dest_folder
示例:
$ cp -r lsst/ /root/abc
$ cp -R lsst/ /root/abc
  • 所有目标文件指定的目录必须是己经存在的,cp命令不能创建目录。

五、相关命令

1、Linux 命令之 rcp 命令详解

2、Linux 命令之 scp 命令详解

3、Linux 命令之 mv 命令详解

4、Linux 命令之 rcp 命令详解

【Linux 命令】cp 命令详解的更多相关文章

  1. Linux常用命令及部分详解

    1.总结部分 常用指令 ls      显示文件或目录 -l            列出文件详细信息l(list) -a            列出当前目录下所有文件及目录,包括隐藏的a(all) m ...

  2. Linux命令工具 top详解

    Linux命令工具 top详解 top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器.top是一个动态显示过程,即可以通过用户按键来不 ...

  3. 每周一个linux命令之---uptime详解

    每周一个linux命令之---uptime详解 linux命令 uptime详解 引言:从今天开始,每周更新一个对程序员有用的linux命令,我真的没敢写每天一个,我怕我坚持不下去,每周一个还是可以的 ...

  4. 【linux】linux命令grep + awk 详解

    linux命令grep  +  awk 详解 grep:https://www.cnblogs.com/flyor/p/6411140.html awk:https://www.cnblogs.com ...

  5. linux route命令的使用详解 添加永久静态路由 tracert traceroute

    linux route命令的使用详解 添加永久静态路由  tracert  traceroute route -n    Linuxroute  print  Windows traceroute  ...

  6. linux下IPTABLES配置详解 (防火墙命令)

    linux下IPTABLES配置详解 -A RH-Firewall-1-INPUT -p tcp -m state --state NEW -m tcp --dport 24000 -j ACCEPT ...

  7. 【转载】Linux字符集和系统语言设置-LANG,locale,LC_ALL,POSIX等命令及参数详解

    Linux字符集和系统语言设置-LANG,locale,LC_ALL,POSIX等命令及参数详解 1清风揽月10人评论5006人阅读2017-06-21 15:48:43   博文说明[前言]: 本文 ...

  8. free命令常用参数详解

    free命令常用参数详解 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 在运维期间我们会经常去查看服务器硬件信息,比如说内存,大家可能知道看内存用“[root@yinzhengji ...

  9. IP命令的用法详解

    IP命令的用法详解 原创 2017-06-29 10:02:34 0932 摘自:http://www.php.cn/linux-371363.html ip命令是Linux下较新的功能强大的 ...

  10. ping命令执行过程详解

    [TOC] ping命令执行过程详解 机器A ping 机器B 同一网段 ping通知系统建立一个固定格式的ICMP请求数据包 ICMP协议打包这个数据包和机器B的IP地址转交给IP协议层(一组后台运 ...

随机推荐

  1. altium designer 20.0.8

    altium designer 20.0.8 download : http://dl3.downloadly.ir/Files/Software/Altium_Designer_20.0.8_Bet ...

  2. python模块IO

    Python之模块IO io概叙 io模块提供了python用于处理各种类型I/O的主要工具,主要有三种类型的I/O:文本I/O,二进制I/O和原始I/O:这些都是通用类型,各种后备存储可使用其中的每 ...

  3. tcp协议传输方法&粘包问题

    socket实现客户端和服务端 tcp协议可以用socket模块实现服务端可客户端的交互 # 服务端 import socket #生成一个socket对象 soc = socket.socket(s ...

  4. Evevt Loop 事件循环

    目录 JavaScript 是一门单线程的语言 一.什么是event Loop的执行机制 练习 异步任务-setTimeout 练习1: 练习2: 练习3: 练习4: 二 事件队列作用 同步任务 例1 ...

  5. 数据库Oracle的select用法(部分)

    Oracle的select用法(部分): 1.查询所有: select * from employees; 2.加上where子句:用选择限制行 select * from employees whe ...

  6. 针对tomcat中startup启动服务器闪退的情况

    1.要保证你配置jdk环境变量无误:java环境变量配置详解. 2. 3.在环境变量中设置CATALINA_HOME:

  7. [TimLinux] systemd 精通CentOS7系统启动systemd

    1. 介绍 systemd: 在12种不同类型的实体单元(entity unit)间提供了一个依赖关系系统. 2. 几个概念 实体单元:为系统的启动和维护封装多种对象(object).主体单元在单元配 ...

  8. USB3.0之高速视频传输测试 双目相机(mt9p031、mt9m001)带宽高达300M测试 配合isensor测试 500万像素15fps

    最近完善了下USB3.0的视频开发测试,主要优化了FPGA程序和固件,及其同步方式.对带宽和图像效果进行了仔细的测试 开发板架构(2CMOS+FPGA+2DDR2+USB3.0) 评估板底板配合2个M ...

  9. synchronized,ReentrantLock解决锁冲突,脏读的问题

    最常见的秒杀系统,解决思路就是从前端.后台服务.数据库层层去掉负载,以达到平衡 锁作为并发共享数据,保证一致性的工具,在JAVA平台有多种实现(如 synchronized 和 ReentrantLo ...

  10. Day 04 作业

    目录 作业 简述Python的五大数据类型的作用.定义方式.使用方法: 数字类型 字符串类型 列表 字典 布尔型 一行代码实现下述代码实现的功能: 写出两种交换x.y值的方式: 一行代码取出nick的 ...