概述

cp 命令主要可用于复制文件或目录。cp 是单词 copy 的缩写。

语法

cp 命令的语法如下:cp [选项] source dest。即复制 source 文件到 dest。

该命令支持的选项有:

选项 说明
-r 递归复制整个文件夹
-i 若目标文件已经存在,则会询问是否覆盖
-p 保留源文件或目录的所有属性
-d 当复制符号链接时,把目标文件或目录也建立为符号链接,并指向与源文件或目录连接的原始文件或目录。如果不加上该选项,则复制的仍然是源文件而不是符号链接文件,并且对硬链接文件无效
-l 对源文件建立硬链接,而非复制文件
-s 对源文件建立符号链接,而非复制文件
-b 覆盖已存在的目标文件前将目标文件进行备份
-v 详细显示 cp 命令执行的操作过程

该命令的参数说明:

参数 说明
source 源文件或目录
dest 目标文件或目录

注:该命令最常用的是就算复制文件和复制文件夹功能。

使用

复制文件

所谓的复制文件,就是将一个文件复制到另外一个目录下,其中 source 表示源文件,而 dest 表示目标目录。语法如下:

# 语法
cp 源文件 目标目录
# 实例,将 test.txt 文件复制到 /root/ 目录下
cp /home/lighthouse/test.txt /root/

复制目录

通常情况下,待复制的目录都不是空文件夹,如果直接使用 cp 命令进行复制会失败,如果想要把指定目录及该目录下的子文件和子文件夹都复制过去,则需要加上 -r 选项。其中 src 是源目录;dest 表示目标目录。

# 语法
cp -r 源目录 目标目录
# 实例,将 /home/lighthouse 目录复制到 /root 下
cp -r /home/lighthouse /root/

覆盖文件

当将一个文件或目录复制到另外一个目录下时,如果该目录下已经存在同名文件或目录,那么复制操作就会询问你是否覆盖,如果想要覆盖就回答 y。但每个文件都要回答一次就会很麻烦,所以可以使用 \cp 命令。语法如下:

# 语法
\cp 源文件 目标文件
# 实例
\cp /home/lighthouse/test.txt /root/test.txt

注意,此时 source 表示源文件;dest 表示目标文件,而不是目录。

因为 cp 命令实际上是 cp -i 的别名,而 -i 选项表示在覆盖前询问进行询问。而 \cp 表示使用原始的 cp 命令,而不是这别名表示的命令。

当前目录下复制文件

在当前工作目录中,将某个文件复制一份,并重新定义名称,通常用来备份文件:

cp 源文件名 目标文件名

同样,也可以这样复制一个目录,但必须加上 -r 选项。

显示复制过程

可以加上 -v 选项显示 cp 命令详细的执行过程:

复制多个文件

即源文件 source 可以有多个,但目标文件必须是目录才可以。语法如下:

cp 源文件1 源文件2 源文件3 ... 目标目录

复制软链接文件

如果要复制软连接文件,则需要使用 -d 选项,否则 cp 命令复制的就算源文件本身,而不是软链接文件。只有加上 -d 选项,才会复制软链接文件。语法如下:

cp -d 软连接文件 目标目录或目标文件

复制保留源文件属性

当我们执行完复制命令后,目标文件的时间会变成复制命令的执行时间,而非源文件的时间。所以如果要复制后仍然保留源文件的属性,则需要加上 -p 选项,会保留源文件的所有属性。

建立源文件的硬链接和软链接

可以通过 -l 选项,将目标文件建立成源文件的硬链接;可以通过 -s 选项将目标文件建立成源文件的软链接。同 -d 选项不同,-d 选项要求源文件必须是软链接才能复制成软链接,这两个选项要求源文件是普通文件就可以了。

# 将目标文件建立为源文件的硬链接文件
cp -l 源文件 目标文件
# 将目标文件建立为源文件的软链接文件
cp -s 源文件 目标文件

Linux命令之复制文件或目录cp相关推荐

  1. Linux命令(20)linux服务器之间复制文件和目录

    linux的scp命令: scp就是secure copy的简写,用于在linux下进行远程拷贝文件的命令,和它类似的命令有cp,不过cp只是在本机进行拷贝不能跨服务器.  有时我们需要获得远程服务器 ...

  2. 一天一个Linux基础命令之复制文件或目录命令cp

    cp复制文件或目录 1.命令格式 cp[OPTION]... SOURCE... DIRECTORY 2.命令说明 cp命令用来复制文件或者目录,是Linux系统中最常用的命令之一.一般情况下,she ...

  3. Linux cp命令:复制文件和目录

    cp 命令,主要用来复制文件和目录,同时借助某些选项,还可以实现复制整个目录,以及比对两文件的新旧而予以升级等功能. cp 命令的基本格式如下: [root@localhost ~]# cp [选项] ...

  4. linux目录命令改目录名,Linux命令详解——文件和目录常用命令-linux修改文件名...

    文件和目录常用命令 查看目录内容 ls 切换目录 cd 创建和删除操作 touch rm mkdir 拷贝和移动文件 cp mv 查看文件内容 cat more grep 其他 echo 重定向 &g ...

  5. linux命令 移动/复制文件/目录到指定目录下

    1.同一个服务器下复制文件或文件夹 1.1 复制文件 复制文件:把1.txt 复制到根目录下的sbin目录 cp +文件名(可带路径)+目标路径(带路径)如:cp 1.txt ~/sbin/ 1,2 ...

  6. linux命令之-管理文件和目录的命令

    一. 创建和删除目录的命令 1.mkdir 命令 (1)一般格式:mkdir   [选项]   目录名 (2)说明:该命令创建由目录名命名的目录. (3)举例1: 在目录 /usr/fedora 下建 ...

  7. 目录下内容的递归复制Linux,linux下递归复制文件及目录

    #include"filecopy.c" #include #define SIZE 100 /*递归输出文件和目录的名字*/ int distance=0; char src[S ...

  8. Linux命令之删除文件或目录rm

    概述 rm 命令可用于删除文件或目录,是 remove 的缩写. 语法 rm 命令的语法如下:rm [选项] 文件或目录. 该命令支持的选项有: 选项 说明 -d 删除目录 -f 强制删除文件或目录, ...

  9. Linux命令之移动文件与目录或重命名

    概述 mv 命令可用于移动文件和目录,还可以用于对文件或目录进行重命名.mv 是 move 的缩写. 语法 mv 命令的语法如下: # 重命名 mv [选项] 旧名文件 新名文件 # 移动文件 mv ...

最新文章

  1. Scrum中文网-疫情之下2021敏捷年度状态报告十大看点
  2. arduino定时器函数如何使用_【Arduino101教程】定时器的使用
  3. drawable自定义字体颜色
  4. 迁移到阿里云后,NTKO控件报存word 报文件存取错误,请检查网络传输。
  5. 如何iis上运行php网站_如何让IIS运行php
  6. 机器学习-转换器与估计器05
  7. 自定义django的Template context processors
  8. ACM001 Quicksum
  9. String 创建对象问题
  10. CocosCreator中Protobuf的简单使用
  11. L2-010 排座位 (并查集)
  12. Android Multimedia框架总结(二十八)NuPlayer到OMX过程
  13. 删除计算机中的云u盘,win10系统删除360云u盘图标的方法
  14. 大华相机SDK调用——主动采图、外触发、参数
  15. Matlab实现杨氏双缝干涉和(单缝+多缝+圆孔+矩孔)衍射
  16. Python代码实现信息轰炸
  17. 【Linux系统IO函数】read、write函数及实现文件拷贝
  18. 【有利可图网】PS实战教程43:PS合成沙尘暴侵蚀打散场景的灰姑娘图片
  19. 猪齿鱼数智化开发管理平台 1.3.0版本已发布,欢迎试用
  20. 7.面向对象进阶(1)

热门文章

  1. matlab BPSK调制方式代码实现
  2. 可以免费做题,免费查答案的模拟计算机等级考试软件
  3. C语言函数,与网站推荐,学习推荐。
  4. codecombat计算机科学入门五(python)
  5. Educational Codeforces Round 87 (Rated for Div. 2) F. Summoning Minions
  6. 如何在cmd中运行PHP
  7. Laravel实现软删除
  8. linux怎么把英文版火狐浏览器改成中文
  9. 爱情四十三课,热战与冷战
  10. Git版本控制工具的使用一