【Linux指令集】---cp指令(超详细)

个人主页:平行线也会相交
欢迎 点赞👍 收藏✨ 留言✉ 加关注💓本文由 平行线也会相交 原创
收录于专栏【Linux专栏】🎈
本专栏旨在分享学习Linux的一点学习心得,欢迎大家在评论区讨论💌
演示环境:centos7
在这里插入图片描述

cp指令用于复制文件或目录。
基本格式:
cp [选项] 源文件 目标文件

选项作用
-r递归复制整个目录,包括其子目录和文件。
-p保留源文件的属性(如权限、时间戳等)。这将尽可能保留源文件的原始属性。
-i交互式地询问是否覆盖已存在的目标文件。如果要复制多个文件,将会逐个询问。
-f强制复制,即使目标文件或目录已经存在,也会覆盖它们。
-v显示详细的复制过程,包括复制的文件名和目录名。
-u只复制源文件中修改时间较新的文件,跳过那些已经存在且比源文件旧的目标文件。
-n不覆盖已存在的目标文件,即跳过已存在的文件。
-s创建符号链接而不是复制文件。

目录

  • cp example.txt backup.txt(备份文件)
  • -r(重点)
  • -p
  • -i
  • -f
  • -v
  • -n
  • -u

cp example.txt backup.txt(备份文件)

例一: cp example.txt backup.txt:将复制源文件并将其粘贴到目标文件位置。如果目标文件已经存在,它将被覆盖。
在这里插入图片描述

在这里插入图片描述
现在将当前目录中的文件test1.txt复制到当前目录的文件夹temp中去:
例二:cp test1.txt temp/(如果temp/后面什么也不添加,会复制过去的文件名的名称依然是test1.txt),如下:
在这里插入图片描述
例三:cp test1.txt temp/test.txttemp/后面加上test.txt,意思是这里复制过去的文件的文件名称为test.txt),如下:
在这里插入图片描述

-r(重点)

使用-r选项,cp指令会递归地复制目录及其内容,包括子目录和文件。

在这里插入图片描述

例一cp -r temp new_temp:将目录temp复制到当前目录中的new_temp中去,请看: 在这里插入图片描述

在这里插入图片描述> 例三:cp -r a b c x现在,要将目录a、目录b、目录c全部复制粘贴到目录x中,请看:
在这里插入图片描述

-p

-p选项:复制的目标文件会继承源文件的权限和其他属性,以尽可能地保持它们的一致性。
需要注意的是:
如果目标文件已经存在,它的权限和属性将被覆盖。
如果同时想保持目录结构,可以结合使用-r选项和-p选项来进行递归复制,如下所示:cp -rp a a_1(或者分开写即cp -r -p a a_1)

在这里插入图片描述
简单来说,-p选项作用就是复制且保持文件属性不变。

-i

在cp指令中,-i选项用于在复制文件时进行交互式确认。当目标文件已经存在时,-i选项会提示用户是否覆盖目标文件。


cp -i t1.txt t2.txt请看举例:
在这里插入图片描述

-f

-f选项:使用cp命令复制文件时,如果目标文件已经存在,cp指令会询问是否覆盖目标文件。但是当你使用-f选项时,cp指令会强制覆盖目标文件而不进行询问。
在这里插入图片描述

-v

-v选项:使用-v选项后,cp指令会显示每个复制操作的详细信息,包括复制的源文件和目标文件的名称。
请看举例:
在这里插入图片描述

-n

-n:如果目标文件已经存在,cp命令将不会覆盖它,而是跳过复制操作。
举个例子,如下图,要将test.txt文件复制到目录c中去。
在这里插入图片描述
输入命令cp -n test.txt a/b/c/
在这里插入图片描述
此时目录c中就有了test.txt文件。
需要注意的是:
如果目标位置已经存在名为test.txt的文件,使用以下命令将会跳过复制操作。
如果目标位置不存在相同名称的文件,-n选项将不会产生任何影响,cp命令将正常执行复制操作。

-u

-u:只复制内容发生变化的文件,或者当目标文件不存在时,也会发生复制。

以上就是cp指令中常见的选项,当然由于一些选项并不是很常见、所以这里就不再一一列举了
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/27346.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

基于SpringBoot+vue的民宿管理平台系统设计与实现

博主介绍: 大家好,我是一名在Java圈混迹十余年的程序员,精通Java编程语言,同时也熟练掌握微信小程序、Python和Android等技术,能够为大家提供全方位的技术支持和交流。 我擅长在JavaWeb、SSH、SSM、SpringBoot等框架…

【Ajax】笔记-NodeMon 简介、安装、使用

NodeMon 简介、安装、使用 简介安装启动应用测试 简介 nodemon用来监视node.js应用程序中的任何更改并自动重启服务,非常适合用在开发环境中。以前,我们开发一个node后端服务时,每次更改文件,均需重启一下,服务才能生效。这使我们…

HCIP——HCIA回顾及静态实验

HCIP HCIA一、知识回顾1、OSI七层参考模型:2、重要的几个协议报头格式 二、静态实验1、实验拓扑图2、实验要求3、实验思路4、实验步骤1、给接口划分IP地址以及配置环回地址2、交换机配置划分VLAN3、配置静态路由4、配置DHCP服务5、测试6、优化 HCIA 1、七层参考模型…

K8S安全风险及防护建议

Kubernetes(K8S)是一个可移植、可扩展的开源平台,用于管理容器化的工作负载和服务,方便进行声明式配置和自动化。一个Kubernetes集群通常包含跨多台计算机运行的控制平面和多个工作节点(node),控…

基于 rsync 像 macOS 的 Time Machine 一样备份您的 Linux 服务器

一、前言 Time Machine 这东西用过 macOS 的都知道,可以说是数据备份神器。 前几天我误删了几个文件,还好我有设置 Time Machine 自动备份,于是我打开 Time Machine,点几下鼠标,文件就回来了! 我想要是 …

《遗留系统现代化》读书笔记(基础篇)

你现在所写的每一行代码,都是未来的遗留系统 为什么要对遗留系统进行现代化? 什么是遗留系统? 判断遗留系统的几个维度:代码、架构、测试、DevOps 以及技术和工具。时间长短并不是衡量遗留系统的标准。代码质量差、架构混乱、没…

JavaWeb(2)——HTML、CSS、JS 快速入门

一、JavaScript快速入门 JavaScript | MDN (mozilla.org) 一个完整的JavaScript实现由3个不同部分组成:核心(ECMAScript)、文档对象模型(DOM)和浏览器对象模型(BOM),如图所示。 EC…

大数据与视频技术的融合趋势将带来怎样的场景应用?

视频技术和AI技术的融合是一种新兴的技术趋势,它将改变视频行业的运作方式。视频技术和AI技术的融合主要包括以下几个方面: 1)人脸识别技术 人脸识别技术是AI技术的一个重要应用场景。它可以通过对视频中的人脸进行识别和分析,实…

常用语言的线程模型(Java、go、C++、python3) | 京东云技术团队

背景知识 软件是如何驱动硬件的? 硬件是需要相关的驱动程序才能执行,而驱动程序是安装在操作系统内核中。如果写了一个程序A,A程序想操作硬件工作,首先需要进行系统调用,由内核去找对应的驱动程序驱使硬件工作。而驱动…

Spring源码学习-MVC的WEB源码解析

目录 SpringMVC官方文档SpringMVC的父子容器父子关系的定义自定义快速启动器启动过程容器创建的过程容器刷新启动 父子容器示例图 网络请求链路分析DispatcherServlet请求链路 DispatcherServlet详解(MVC核心功能类)DispatcherServlet九大组件九大组件的初始化默认策略初始化时…

Linux网络基础 — 网络层

目录 IP协议 IP协议报头格式 网段划分 特殊的IP地址 IP地址的数量限制 私有IP地址和公网IP地址 路由 补充 网络层 在复杂的环境中确定一个合适的路径。 IP协议 ip具有将数据从 主机A 跨网络送到 主机B 的能力。 主机: 配有IP地址,但是不进行路由控制的设备…

二、DDL-3.数据类型

分为3种:数值类型、字符串类型、日期时间类型。 一、数值类型 【案例】 年龄: age TINYINT UNSIGNED——范围(0,255)够用 分数:score double(4,1)——分数0-100有小数,4—最高位数&#xff0…