cp命令用来将一个或多个源文件或者目录复制到指定的目的文件或目录。它可以将单个源文件复制成一个指定文件名的具体的文件或一个已经存在的目录下。cp命令还支持同时复制多个文件,当一次复制多个文件时,目标文件参数必须是一个已经存在的目录,否则将出现错误。

语法

cp(选项)(参数)

选项

  • -a:此参数的效果和同时指定"-dpR"参数相同;
  • -d:当复制符号连接时,把目标文件或目录也建立为符号连接,并指向与源文件或目录连接的原始文件或目录;
  • -f:强行复制文件或目录,不论目标文件或目录是否已存在;
  • -i:覆盖既有文件之前先询问用户;
  • -l:对源文件建立硬连接,而非复制文件;
  • -p:保留源文件或目录的属性;
  • -R/r:递归处理,将指定目录下的所有文件与子目录一并处理;
  • -s:对源文件建立符号连接,而非复制文件;
  • -u:使用这项参数后只会在源文件的更改时间较目标文件更新时或是名称相互对应的目标文件并不存在时,才复制文件;
  • -S:在备份文件时,用指定的后缀“SUFFIX”代替文件的默认后缀;
  • -b:覆盖已存在的文件目标前将目标文件备份;
  • -v:详细显示命令执行的操作。

参数

  • 源文件:制定源文件列表。默认情况下,cp命令不能复制目录,如果要复制目录,则必须使用-R选项;
  • 目标文件:指定目标文件。当“源文件”为多个文件时,要求“目标文件”为指定的目录。

实例

(1)如果把一个文件复制到一个目标文件中,而目标文件已经存在,那么,该目标文件的内容将被破坏。此命令中所有参数既可以是绝对路径名,也可以是相对路径名。
例如,下面的命令将指定文件/usr/tmp/file1.txt复制到当前目录下:

cp /usr/tmp/file1.txt .

(2)所有目标文件指定的目录必须是己经存在的,cp命令不能创建目录。如果没有文件复制的权限,则系统会显示出错信息。

将源文件/usr/tmp/file1.txt复制到目录/usr/tmp下,并改名为 file1.html

cp /usr/tmp/file1.txt  /usr/tmp/file1.html

(3)将目录/usr/men下的所有文件及其子目录复制到目录/usr/zh

cp -r /usr/men /usr/zh

(3)交互式地将目录/usr/men中的以 m 打头的所有. c 文件复制到目录/usr/zh

cp -i /usr/men m*.c  /usr/zh

(4)我们在 Linux 下使用 cp 命令复制文件时候,有时候会需要覆盖一些同名文件,覆盖文件的时候都会有提示:需要不停的按 Y 来确定执行覆盖。文件数量不多还好,但是要是几百个估计按 Y 都要吐血了,于是折腾来半天总结了一个方法:

cp aaa/* /bbb

复制目录aaa下所有到/bbb目录下,这时如果/bbb目录下有和aaa同名的文件,需要按Y来确认并且会略过aaa目录下的子目录。

cp -r aaa/* /bbb

这次依然需要按Y来确认操作,但是没有忽略子目录。

cp -r -a aaa/* /bbb

依然需要按Y来确认操作,并且把aaa目录以及子目录和文件属性也传递到了/bbb。

/cp -r -a aaa/* /bbb

成功,没有提示按Y、传递了目录属性、没有略过目录。

Linux cp复制文件或文件夹相关推荐

  1. Linux之复制、移动文件及目录命令

    Linux之复制.移动文件及目录命令 1. 复制.移动文件及目录命令的使用 命令 说明 cp 拷贝文件.拷贝目录 mv 移动文件.移动目录.重命名 cp命令效果图: 说明: 拷贝目录需要加上-r选项, ...

  2. linux cp复制文件夹下的软连接,Linux培训:cp命令复制文件和目录

    Linux培训:cp命令复制文件和目录 更新时间:2019年04月02日16时56分 来源:传智播客linux培训 浏览次数: cp 是用于复制的命令,其基本信息如下: 命令名称:cp: 英文原意:c ...

  3. Linux cp 复制文件或复制文件夹

    命令格式: cp [option] Source Directory 常用选项: cp命令中有一个常用选项R,它可以递归的复制目录中的所有文件 参数说明: Source:要复制的源文件 Directo ...

  4. linux cp 时 略过文件,CentOS下执行cp命令式提示略过文件夹

    今天在CentOS下复制一个文件夹到另一个文件夹的时候cp ./res /usr 的时候出现了问题,提示我的是: cp略过了文件夹 后来我找了一下 在网上search了一下CP命令的用法: CP命令 ...

  5. linux cp无法创建一般文件夹,cp: 无法创建普通文件 : 文件已存在

    背景 碰到一个偶现的编译出错问题,如图 报错的信息是 cp: 无法创建普通文件"xxx": 文件已存在 排查原因 看了下 Makefile,这句非常简单,就是 cp ./xxx . ...

  6. linux批量复制并新建文件夹

    问题描述:已知一批包含文件的文件夹,想要重新新建一批同名的空文件夹,且不包含原来的文件. 思路: 将这批文件夹的名称批量复制下来,再利用makedir命令批量生成文件夹. 步骤: 1. 在shell终 ...

  7. cp复制多个文件到指定目录

    # 复制opt/tools下所有文件到 /usr/local/bin cp -rf opt/tools/* /usr/local/bin cp -r opt/tools/* /usr/local/bi ...

  8. [linux]cp和mv对文件和链接影响的区别

    有文件a,a1为其硬链接,即: ln a a1 现在有文件b,对其进行以下两种操作: 1. mv b a 2. cp b a 问这两种操作对a1有何影响?     这个问题以前还真没关注过,之前的项目 ...

  9. linux快速复制大量小文件方法

    使用nc+tar 请确认两边的centos操作系统是否安装nc yum install nc -y 首先在接收主机上执行: nc -l 8888 |tar -C /tmp -zxf - 再发送主机上执 ...

最新文章

  1. php内容采集系统,第一步、采集规则
  2. Netflix发布Polly.JS,一个用于HTTP交互的开源库
  3. 【XAudio2】2.XAudio2 开始!
  4. 从子窗体传递数据给父窗体
  5. CSS仿艺龙首页鼠标移入图片放大
  6. 深入浅出:Microsoft分布式事务处理协调器
  7. 带有示例的Python date strftime()方法
  8. printf打印结构体_工程师:这道题80%初学者都没做对!你确定搞懂结构体内存对齐了?...
  9. 基于深度学习的青菜病害区域图像语义分割与定位
  10. python执行不了elif_浅谈对python中if、elif、else的误解
  11. ecshop模板构建说明
  12. windows系统文件名太长导致无法打开删除移动
  13. Android使用网络打印机打印
  14. adb 连接逍遥游模拟器搭配monkey命令 抓取 logcat日志
  15. Springcloud笔记超级详细
  16. PostgreSQL的upsert功能(on conflict do)的用法
  17. 【苹果相册推】软件安装ipv6得到可由Apple使用ArrayList tmpMacList
  18. 网站点击流日志数据分析
  19. VBS 请求WebAPI接口_如何设计WEB API
  20. IOS Dev Intro - Frameworks

热门文章

  1. ironpython安装_安装 IronPython
  2. WOW魔兽世界编程API中文版
  3. ES系列之原来查看文档数量有这么多姿势
  4. java中一级缓存_JavaWeb_(Hibernate框架)Hibernate中一级缓存
  5. PathFileExists用法
  6. c语言fclose的作用,文件读写完后fclose()就内存溢出,该怎么处理
  7. Soul网关中的@SoulSpringMvcClient注解
  8. zookeeper 客户端启动
  9. Android自定义控件进阶13-MotionEvent详解
  10. Android使EditText和SearchView取消默认焦点,获取焦点弹出键盘