在 Linux 中复制文件和目录

图片

目录

⛳️推荐

前言

在 Linux 命令行中复制文件

将文件复制到另一个目录

复制文件但重命名

将多个文件复制到另一个位置

复制时处理重复文件

交互式复制文件

在 Linux 命令行中复制目录

仅复制目录的内容(不是目录)

复制多个目录

测试你的知识


⛳️推荐

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站

前言

复制文件是你经常执行的最基本但最重要的任务之一。

Linux 有一个专门的 cp 命令用于复制文件和目录(文件夹)。

在终端基础知识系列的这一部分中,你将学习在终端中复制文件和文件夹。

在 Linux 命令行中复制文件

让我向你展示一些复制文件的示例。

将文件复制到另一个目录

要将一个文件复制到另一目录,你所要做的就是遵循给定的命令语法:

cp 源文件 目标目录

例如,在这里,我将名为 Hello.txt 的文件复制到名为 Tux 的目录中:

图片

copy file to another directory in linux command line

正如你所看到的,文件已成功复制到 Tux 目录中。

复制文件但重命名

你可以选择在复制文件时重命名该文件。只需为“目标文件”指定一个不同的名称即可。

cp 源文件 改名的文件

作为参考,在这里,我将名为 Hello.txt 的文件复制到同一目录,并将其重命名为 Renamed_Hello.txt

图片

为什么要这么做?比如说,你必须编辑配置文件。一个好的做法是在编辑配置文件之前在同一位置对其进行备份。这样,如果事情没有按计划进行,你可以恢复到旧配置。

将多个文件复制到另一个位置

要将多个文件复制到另一个目录,请按以下方式执行命令:

cp File1 File2 File3 FileN Target_directory

在这里,我将多个文件复制到新位置。

图片

📋 当你复制多个文件时,仅使用 cp 命令无法重命名它们。

复制时处理重复文件

默认情况下,如果目标目录中存在同名文件,cp 命令将覆盖该文件。

为了避免覆盖,你可以在 cp 命令中使用 -n 选项,它不会覆盖现有文件:

cp -n 源文件 目标目录

例如,在这里,我尝试复制目标目录中已有的两个文件,并使用 -v 选项来展示该命令正在执行的操作:

cp -n -v itsFOSS.txt LHB.txt LU.txt ~/Tux

图片

交互式复制文件

但是,当你想要覆盖某些文件,而某些文件应该保持不变时该怎么办?

好吧,你可以使用 -i 选项在交互模式下使用 cp 命令,它每次都会询问你是否应该覆盖该文件:

cp -i 源文件 目标目录

图片

🖥️ 自己练习上述所有示例。你已经了解如何创建文件和文件夹,因此请重新创建所有内容。

在 Linux 命令行中复制目录

mkdir 命令用于创建新目录,rmdir 命令用于删除(空)目录。但没有用于复制目录的 cpdir 命令。

你必须使用相同的 cp 命令,但使用递归选项 -r 将目录及其所有内容复制到另一个位置:

cp -r 源目录 目标目录

例如,在这里,我将名为 IF 的目录复制到 LHB

图片

但它复制了整个目录。🤨

那么,当你只想复制目录内容而不是目录本身时该怎么办?

你可以执行以下操作:

仅复制目录的内容(不是目录)

要仅复制目录的内容,而不复制目录本身,请在源目录名称的末尾附加 /.

cp -r 源目录/. 目标目录

在这里,我想复制名为 IF 的目录的内容,其中包含以下三个文件:

图片

我将执行以下命令将 IF 目录的文件内容复制到 LHB

cp -r IF/. LHB

图片

你还可以在此处使用 源目录/* 。

复制多个目录

要复制多个目录,你必须按以下方式执行命令:

cp -r 目录1 目录2 目录3 目录N 目标目录

例如,在这里,我将两个名为 IF 和 LU 的目录复制到 LHB

cp -r IF LU ~/LHB

图片

当你想要从多个目录复制文件但不复制目录本身时,你可以执行相同的操作:

cp -r 目录1/. 目录2/. 目录3/. 目录N/. 目标目录

图片

🖥️ 你还可以像重命名文件一样重命名目录。

测试你的知识

现在,让我们看看你对到目前为止所学到的知识还记得多少。

◈ 创建一个名为 copy_practice 的目录。

◈ 将文件 /etc/services 复制到这个新创建的文件夹。

◈ 在此目录下创建一个名为 secrets 的文件夹,并将文件 /etc/passwd 和 /etc/services 复制到其中。

◈ 将 copy_practice 中的 services 文件复制到 secrets 文件夹中,但不要覆盖它。

◈ 将 secrets 文件夹复制到你的主目录。

◈ 删除 secrets 和 copy_practice 目录。

这会给你一些练习。

到目前为止进展顺利。你已经学到了很多东西。在下一章中,你将了解如何使用 mv 命令移动文件和文件夹。

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

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

相关文章

74从零开始学Java之排序算法中的冒泡和选择排序

作者:孙玉昌,昵称【一一哥】,另外【壹壹哥】也是我哦 CSDN博客专家、万粉博主、阿里云专家博主、掘金优质作者 前言 我们要想成为一个优秀的程序员,其实非常关键的一点就是要锻炼培养自己的编程思维,就好比一个狙击手,要通过大量的射击训练要用大量的子弹喂出来。同样的…

值得推荐的多款iPaaS工具

当今企业面临着日益复杂的数据和系统集成挑战,为了提高业务效率和灵活性,许多企业转向了iPaaS工具(Integration Platform as a Service,即集成平台即服务)。iPaaS工具可以帮助企业轻松地连接和集成各种应用程序、数据和…

Xinstall助力推广结算统计,让数据一目了然

在当今数字化营销的时代,推广活动的成功与否往往取决于精准的数据统计和分析。然而,对于许多广告主和开发者来说,推广结算统计却是一个令人头疼的问题。数据分散、渠道繁多、统计口径不一,这些问题都给推广效果的衡量带来了极大的…

SM3国密算法简介及应用案例

SM3国密算法简介及应用案例 随着信息技术的迅猛发展,数据安全已经成为全球各国关注的重点。为了加强数据加密的自主性与安全性,中国国家密码管理局(SCA)发布了一系列的国家密码标准算法,其中 SM3 是一种重要的国密&am…

Camtasia Studio 的功能介绍及常规操作教程

随着数字媒体时代的快速发展,视频已经成为人们获取信息、娱乐和沟通的主要方式之一。在这样的背景下,一款强大且易于使用的视频编辑和制作工具显得尤为重要。Camtasia Studio就是这样一款能够满足各种视频制作需求的优秀软件。 一、Camtasia Studio的特…

PostgreSQL <>运算符null值不会被包括在查询结果中的坑

文章目录 前言一、问题示例二、解决方法三、补充内容1. 使用 COALESCE 函数2. 使用 IS NULL 和 IS NOT NULL 运算符总结前言 在使用 PostgreSQL 进行查询时,我们经常会使用 <> 运算符来表示不等于。然而,需要注意的是,当涉及到 NULL 值时,<> 运算符不会将 NUL…

pandas处理excel问题(记录)

1. pandas读取excel合并单元格问题 网上查到的都是 df[col] df[col].ffill() 这个能解决大部分简单合并的问题&#xff0c;遇到复杂的就不行了遇到上图中 有空的情况&#xff0c;ffill() 也会向下填充。 所以不能通过这种方式 import openpyxl # 拆分所有的合并单元格&#…

如何注册新加坡公司

作为亚太地区的金融中心之一&#xff0c;新加坡一直以来都是企业布局海外市场的首选目的地。无论是开展新业务还是寻求职业发展&#xff0c;新加坡都是一个富有吸引力的选择。 新加坡公司注册资料 1、需提供拟进行注册的新加坡纯英文名称&#xff1b; 2、公司注册资本&#…

Vue3---router(安装、路由跳转、路由守卫、本地存储)

Vue3—router&#xff08;安装、路由跳转、路由守卫、本地存储&#xff09; 目录 Vue3---router&#xff08;安装、路由跳转、路由守卫、本地存储&#xff09;基础使用安装创建路由 路由跳转无参跳转js写法html写法 有参跳转queryparams 路由守卫额外&#xff1a;本地存储sessi…

shell_结束进程脚本

结束进程的shell脚本如下&#xff1a; #!/bin/bash# kill all process ps aux|grep "local" | grep -v grep | awk {print $2} | while read line; do kill -9 $line; done 解析&#xff1a; ps aux 命令常用于查看当前系统中运行的进程&#xff0c;以及它们所占用…

2024年3月牛奶乳品行业数据:热销品牌商品排行榜出炉!

鲸参谋监测的某宝平台3月份牛奶乳品市场销售数据已出炉&#xff01; 根据鲸参谋电商数据分析平台显示&#xff0c;今年3月份&#xff0c;某宝平台上牛奶乳品的销量约120万件&#xff0c;环比上个月增长84%&#xff0c;同比去年下滑11%&#xff1b;销售额约5500万元&#xff0c…

手机号验证码登录

点击获取验证码登录---点击获取验证码的时候要对手机号进行校验点击登录按钮的时候也要对表单进行一个校验 静态页面 1、静态页面代码---样式自己写1 <template><!-- #ifdef APP || H5 --><uni-forms class"login-form" :rules"mobileRules&qu…

怎么获取Unity的安装目录

现成api EditorApplication.applicationPath 获取结果&#xff1a;C:/Program Files/Unity/Hub/Editor/2021.3.10f1/Editor/Unity.exe EditorApplication.applicationContentsPath 获取结果&#xff1a;C:/Program Files/Unity/Hub/Editor/2021.3.10f1/Editor/Data

量化地形处理

1: 量化地形切片&#xff1a;GDAL查询数据&#xff1b;CTB算法转mesh&#xff1b;高度图需要和周围高度图边界做高度融合&#xff0c;四顶点需要做平均值融合&#xff1b;法线想要在前端显示正确必须将mesh坐标转为4326或者3857&#xff1b; 这个使用开源即可&#xff1a;cesi…

PoseC3D数据预处理

poseC3D需要根据以下配置文件进行数据预处理 test_pipeline [dict(typeUniformSampleFrames, clip_len48, num_clips10),dict(typePoseDecode),dict(typePoseCompact, hw_ratio1., allow_imgpadTrue),dict(typeResize, scale(64, 64), keep_ratioFalse),dict(typeGeneratePos…

Flume进阶

目录 第1关:拦截器的使用 第2关:自定义拦截器 第1关:拦截器的使用 代码文件: # Define source, channel, sink #agent名称为a1# Define source #source类型配置为avro,监听8888端口,后台会自动发送数据到该端口 #拦截后台发送过来的数据,将y.开头的保留下来# Define chan…

asp.net结课作业中遇到的问题解决3

目录 1、想实现不止鼠标滑过就显示图片&#xff0c;初始化状态下也可以显示图片&#xff0c;且每个图片还会自动变化&#xff0c;该如何实现 2、 同一个项目下的网页之间可以直接在地址栏输入跳转到阅读界面从而实现在这个跳转&#xff0c;那么如何防止这种现象呢&#xff1f;…

自主实现Telnet流量抓取

自主实现Telnet流量抓取 根据测试需求&#xff0c;需要抓取Telnet流量包&#xff0c;使用wireshark Python&#xff08;socket、telnetlib库&#xff09;实现 实现代码 主要此处有坑&#xff0c; 根据协议规则&#xff0c;wireshark 默认端口为23 的是Telnet协议&#xff0…

【JavaEE精炼宝库】计算机是如何工作的

目录 前言&#xff1a; 一、冯诺依曼体系 二、CPU基本知识 2.1 硬盘|内存|CPU关系&#xff1a; 2.2 指令&#xff1a; 2.3 CPU是如何执行指令的&#xff08;重点&#xff09;&#xff1a; 2.4 小结&#xff1a; 三、编程语言 3.1 程序&#xff1a; 3.2 编程语言发展&a…

Java中HashSet、LinkedHashSet和TreeSet的底层原理

HashSet Java中的HashSet的底层原理主要基于哈希表&#xff08;HashMap&#xff09;来实现。以下是HashSet底层原理的简要总结&#xff1a; 数据结构&#xff1a; HashSet内部使用哈希表&#xff08;实际上是一个HashMap的实例&#xff09;来存储元素。哈希表由一个数组&#…