在 Linux 中复制文件和目录

news2024/12/25 9:03:17

图片

目录

⛳️推荐

前言

在 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.coloradmin.cn/o/1613068.html

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

相关文章

顺序表leetcode刷题(C语言版)

一.移除元素 对于本题,共有两种解法: 思路一:创建新的数组,遍历原数组,将不为value的值放到新数组中,但本题不允许使用新的数组,因此该方法不行 思路二:使用快慢指针,原数…

用Cmake编译程序时,链接到FFmpeg库

用Cmake编译程序时,链接到FFmpeg库 一、前言 可喜可贺,折腾了一晚上终于把这个勾八链接成功了,已经要吐了。看到下面控制台的输出,吾心甚慰呀😭 [100%] Linking CXX executable rknn_yolov5_demo [100%] Built targe…

[数据结构]——排序——插入排序

目录 ​编辑 1 .插入排序 1.基本思想: 2.直接插入排序: ​编辑 1.代码实现 2.直接插入排序的特性总结: 3.希尔排序( 缩小增量排序 ) 1.预排序 2.预排序代码 3.希尔排序代码 4.希尔排序的特性总结: 1 .插入排序 1.基本思…

C语言联合体详解

下午好诶,今天小眼神给大家带来一篇C语言联合体详解的文章~ 目录 联合体 1. 联合体类型的声明 2. 联合体的特点 代码一: 代码二: 3. 相同成员的结构体和联合体对比 ​编辑4. 联合体大小的计算 5. 联合体的优点 联合体 1. 联合体…

电脑显示缺失d3dx9_43.dll文件如何修复?分享5种详细的修复方法

在日常使用计算机的过程中,当我们尝试启动某个软件或运行一款游戏时,系统可能会弹出一个错误提示信息,明确指出“d3dx9_43.dll文件缺失”。这个情况表明,作为Windows操作系统中不可或缺的一部分,DirectX 9.0c的一个关键…

数电期末复习(二)逻辑代数基础

这里写目录标题 2.1 二值逻辑变量与基本逻辑运算2.1.1 与运算2.1.2 或运算2.1.3 非运算2.1.4 常用复合逻辑运算 2.2 逻辑函数的建立及其表示方法2.2.1 真值表表示2.2.2 逻辑函数表达式表示2.2.3 逻辑图表示方法2.2.4 波形图表示方法 2.3 逻辑代数2.3.1 逻辑代数的基本定律和恒等…

MySQL数据库基础知识(数据库/表的基础操作 + 基本类型)

文章目录 数据库的操作显示当前数据库服务器上有哪些数据库创建数据库使用数据库删除数据库 常用数据类型数值类型字符串类型日期类型小结(主要使用) 表的操作创建表查看表结构列出当前数据库的表删除表 注释MySQL创建的数据库/表存储在系统的位置 数据库的操作 输入的单词之间…

算法入门——二分查找

目录 1、二分模板 2、习题 1.704.二分查找 2.35.搜索插入位置 3.744. 寻找比目标字母大的最小字母 4.69. x 的平方根 5.1351. 统计有序矩阵中的负数 6.74. 搜索二维矩阵 7.34. 在排序数组中查找元素的第一个和最后一个位置 8.33. 搜索旋转排序数组 9.153. 寻找旋转排…

政企版 WPS Pro 专业版注册安装教程

政企版 WPS Pro 专业版安装及激活步骤 第 1 步:下载压缩包(内含注册码)【无解压密码】。 第 2 步:解压缩后,运行 exe 文件,默认步骤安装即可。 第 3 步:安装完成后,新建一个 Word …

【ThinkPHP框架教程·Part-04】URL访问模式

文章目录 一、URL解析1、URL解析格式2、URL解析示例说明3、设置URL重写 二.URL 兼容模式 本章节我们来简单了解一下 ThinkPHP6.0 的 URL 访问模式,解析它的访问方法。 一、URL解析 ThinkPHP 框架非常多的操作都是通过 URL 来实现的。 1、URL解析格式 由…

利用RFID无线射频技术,实现商品防伪和溯源信息管理

近几年来,伴随着信息化产业的快速发展,企业对于产品在生产、流通、分销和零售等环节的实时跟踪和监管的需求日趋强烈。同时企业在经营过程中不可避免地要在不同区域实行差异化的经销商拿货价格,从而导致窜货现象时有发 生,为企业带…

二叉树链式结构的实现-二叉树的前序 中序 后序 层序遍历

一、二叉树的结构了解 二叉树是: 空树非空:根节点,根节点的左子树、根节点的右子树组成的。 前序: 根 左子树 右子树 --》先根 中序:左子树 根 右子树 --》中根 后序:左子树 右子树 根 --》后根 层序&…

命理八字之答案之书前端uniapp效果实现

#uniapp# #答案之书# 不讲废话&#xff0c;先上截图 <div class"padding"><div class"flex align-center justify-center" style"padding-top:100px;"><div class"radarContainer"><div id"radarBox"…

C#医学实验室/检验信息管理系统(LIS系统)源码

目录 检验系统的总体目标 LIS主要包括以下功能&#xff1a; LIS是集&#xff1a;申请、采样、核收、计费、检验、审核、发布、质控、耗材控制等检验科工作为一体的信息管理系统。LIS系统不仅是自动接收检验数据&#xff0c;打印检验报告&#xff0c;系统保存检验信息的工具&a…

关于Android绘制这一遍就够了

Android绘制基础 Android平台提供了一套完整的UI框架&#xff0c;其中包括了绘制组件和绘制API。在Android中&#xff0c;绘制主要涉及到两个核心概念&#xff1a;Canvas和Paint。 Canvas Canvas是Android中的一个类&#xff0c;它代表了绘图的画布。你可以在这个画布上进行…

CAS Client使用以及执行原理

CAS Client使用以及执行原理 流程介绍 CAS Client是利用Java Web中的Filter进行实现认证功能&#xff0c;客户端对CAS Server的认证流程分为以下步骤&#xff1a; 访问CAS Client服务 由于当前session中未检测到认证信息&#xff0c;会重定向到CAS Server地址进行认证 在CA…

11.Ribbon负载均衡策略及修改

ZoneAvoidanceRule 默认使用的规则 修改规则 第一种方式&#xff1a;定义IRule的Bean,作用于全局。 SpringBootApplication MapperScan("com.xkj.org.mapper") public class OrderApplication {public static void main(String[] args) {SpringApplication.run(Ord…

设计模式——2_A 访问者(Visitor)

文章目录 定义图纸一个例子&#xff1a;如何给好奇宝宝提供他想知道的内容菜单、菜品和配方Menu(菜单) & Cuisine(菜品)Material(物料、食材) 产地、有机蔬菜和卡路里Cuisine & Material 访问者VisitorCuisine & Material 碎碎念访问者和双分派访问者和代理写在最后…

C#基础|StringBuilder字符串如何高效处理。

哈喽&#xff0c;你好&#xff0c;我是雷工。 字符串处理在C#程序开发中是使用频率比较高的&#xff0c;但常规的字符串处理方式对内存占用比较多&#xff0c;为了优化内存&#xff0c;减少不必要的内存浪费&#xff0c;引入了StringBuilder类。 下面学习下StringBuilder类的使…

插入排序动态展示3(Python可视化源代码)

修改了“开始”命令按钮&#xff0c;每次单击“开始”&#xff0c;都重新排序。 Python代码 import tkinter as tk import random import timeclass InsertionSortVisualizer:def __init__(self, root, canvas_width800, canvas_height400, num_bars10):self.root rootself.…