Linux批量快速修改文件名的三种方法

在Linux中,批量重命名文件是一项常见且有用的操作。以下是三种常用的批量重命名文件的方法,每种方法都附有示例。这些方法既可以适用于新手,也适用于更有经验的用户。

话不多说,直接上干货!


rename 命令

rename命令是一种强大的批量重命名工具,它支持使用正则表达式来匹配和替换文件名。

示例:

假设你想将所有以.txt结尾的文件扩展名改为.text,你可以使用以下命令:

rename 's/\.txt$/.text/' *.txt

这个命令会查找当前目录中所有以.txt结尾的文件,并将它们的扩展名更改为.text。

mv命令结合循环

对于不支持rename命令的系统或者更倾向于使用基本命令的用户,可以使用mv命令结合shell循环来进行批量重命名。

示例:

将所有.jpeg文件重命名为.jpg,可以使用以下脚本:

for file in *.jpeg; domv "$file" "${file%.jpeg}.jpg"
done

这个脚本会遍历当前目录中所有.jpeg文件,并将它们重命名为.jpg。

mmv 命令

mmv是另一种用于批量移动和重命名文件的实用工具。它可以使用通配符模式来匹配文件名。

示例:

将文件名中的"空格"替换为"下划线",可以使用以下命令:

mmv "* *" "#1_#2"

这个命令会查找文件名中包含空格的文件,并用下划线替换这些空格。


每种方法都有其特点和适用场景。rename命令非常强大,但需要一定的正则表达式知识。使用mv命令结合循环则更基础,适用于几乎所有Linux系统。而mmv提供了一个中间的选择,既不需要复杂的正则表达式,又比基本的mv命令更灵活。

实战操作演示

假如我收集了来自不同时间不同地区的数据文件,原来的文件格式是“2024-北京-001.txt”,有几百个这样的文件,现在想将其批量修改文件名,比如修改为“北京-24-001_Good.txt”,如何操作最方便?

仅需一行命令完成操作:

rename 's/(\d{4})-(.*)-(\d{3})\.txt$/$2-$1-$3_Good.txt/' *.txt

这个命令的作用是:

(\d{4}):  匹配四位数的年份(比如“2024”)并捕获。
(.*):  匹配城市名称(比如“北京”)并捕获。
(\d{3}):  匹配三位数的编号(比如“001”)并捕获。
s/.../.../:  替换命令,将匹配到的模式替换为指定格式。
$2-$1-$3_Good.txt:  使用捕获的内容重新排列并格式化文件名。这里$2、$1和$3分别对应城市名称、年份和编号。年份被裁剪为两位数,最后添加了固定的字符串“_Good”。

这条命令将会把形如“2024-北京-001.txt”的文件名改成“北京-24-001_Good.txt”

Amazing!就是这么方便,如果你有很多个文件,只要写好正则表达式进行替换,即可快速批量修改文件名称。

希望这篇博客文章能帮助你更好地理解和使用Linux中的批量重命名功能!如果你有任何问题或需要更多的帮助,请私信联系。

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

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

相关文章

浅谈电动汽车充电站箱变电气安全物联监测系统设计与应用

摘 要:基于物联网技术架构提出了一种适用于电动汽车充电站箱变的电气安全物联监测系统设计方案。该系统由电气安全智能感知设备、通信网关、电气安全物联网监测平台等构成,可支持充电站箱变充电桩出线回路电流、电缆 温度、剩余电流、故障电弧、短路电流等数据采集监…

PagedAttention: from interface to kernal

1 Overview PagedAttention灵感来自于操作系统中虚拟内存和分页的经典思想,它可以允许在非连续空间立存储连续的KV张量。具体来说,PagedAttention把每个序列的KV缓存进行了分块,每个块包含固定长度的token,而在计算attention时可…

MCU、MPU、SOC简介

文章目录 前言一、MCU二、MPU三、SOC总结 前言 随着处理器技术的不断发展,CPU(Central Processing Unit)的发展逐渐出现三种分支,分别是MCU(Micro Controller Unit,微控制器单元) 和MPU(Micro Processor Unit,微处理器…

Angular系列教程之管道

文章目录 管道的基本概念使用内置管道创建自定义管道总结 在Angular中,管道(Pipe)是一个非常重要的概念。它们允许我们对数据进行转换、格式化和显示,并且可以轻松地在模板中使用。本篇文章将介绍Angular中的管道概念,…

SL3036国产新品 48V/60V电动车里程增程器供电芯片

随着电动车的普及,里程焦虑成为了很多电动车用户面临的问题。为了解决这个问题,SL3036国产新品应运而生,它是一款48V/60V电动车里程增程器供电芯片。这款芯片的出现,为电动车用户提供了更加可靠的续航里程,让他们在出行…

使用AI自动生成PPT提高制作效率

使用AI自动生成PPT提高制作效率 在制作PPT方面,很多制作者都会轻易跳进一个怪圈:“我要制作一个关于关爱老人的PPT,该怎么做呢,有模板没有?”这个会涉及很多逻辑需要经过不断的思考,制作PPT要通过很多素材、使用技巧、…

3DMax的位图是什么? 3DMax的位图介绍

在3dmax建模中,使用贴图时的位图的频率是很高的。主要原因便就是位图就是我们平常说的图片,有各种格式的图片,能把这张图片贴到物体的表面,呈现效果进行渲染。 3damx的位图支持多种格式,比如jpg、png等等。 当然常用的…

el-table右固定最后一列显示不全或者是倒数第二列无边框线

问题图片: 解决方式1: >>>.el-table__row td:not(.is-hidden):last-child { border-left:1px solid #EBEEF5; } >>>.el-table__header th:not(.is-hidden):last-child{ border-left:1px solid #EBEEF5; } >>>.el-table__head…

C语言--质数算法和最大公约数算法

文章目录 1.在C语言中,判断质数的常见算法有以下几种:1.1.试除法(暴力算法):1.2.优化试除法:1.3.埃拉托色尼筛法:1.4.米勒-拉宾素性检验:1.5.线性筛法:1.6.费马小定理&am…

最新可用GPT-3.5、GPT-4、Midjourney绘画、DALL-E3文生图模型教程【宝藏级收藏】

一、前言 ChatGPT3.5、GPT4.0、GPT语音对话、Midjourney绘画,文档对话总结DALL-E3文生图,相信对大家应该不感到陌生吧?简单来说,GPT-4技术比之前的GPT-3.5相对来说更加智能,会根据用户的要求生成多种内容甚至也可以和…

宋仕强论道之华强北电子交易中心(四十三)

最近中国电子CECC牵头的电子交易中心在前海挂牌,这给华强北带来了一些威胁,也蚕食了部分华强北市场。事实上,电子元器件市场是一个非常巨大且复杂的市场,包括了各种各样的产品和配套的服务。比如说存储产品这一块,标准…

在Overleaf中解决IEEE LaTeX模板不能显示中文问题

解决IEEE的Latex模板不能显示中文的问题 写在最前面编译器选择XeLatex导入CTeX包IEEE单栏转换为双栏如何在Overleaf中解决IEEE LaTeX模板显示中文问题:一些其他的补充引言问题描述准备工作为什么中文字符在IEEE LaTeX模板中显示有问题——了解LaTeX编码的基础概念 关…

写点东西《最佳 Web 框架不存在 》

写点东西《🥇最佳 Web 框架不存在 🚫》 TLDR;您选择的 Web 应用程序框架并不重要。嗯,它很重要,但并不像其他人希望您相信的那样重要。 2024 年存在如此多的库和框架,而且最好的库和框架仍然备受争议&…

C语言——小细节和小知识10

一、全局变量和局部变量 1、引例 当全局变量和局部变量名字相同的情况下&#xff0c;局部变量优先。 #include <stdio.h>int num 10;int main() {int num 0;printf("%d\n", num);return 0; } 运行结果 2、介绍 在C语言中&#xff0c;当局部变量和全局变…

高光谱分类论文解读分享之基于生成对抗性少数过采样的高光谱图像分类

IEEE TGRS 2022&#xff1a;基于生成对抗性少数过采样的高光谱图像分类 题目 Generative Adversarial Minority Oversampling for Spectral–Spatial Hyperspectral Image Classification 作者 Swalpa Kumar Roy , Student Member, IEEE, Juan M. Haut , Senior Member, IE…

【野火i.MX6NULL开发板】ARM-GCC 和开发板的 HelloWorld(ubuntu主机和野火开发板debian交叉编译)、开发板的/mnt里没文件

0、前言 参考资料&#xff1a; 《野火 Linux 基础与应用开发实战指南基于 i.MX6ULL 系列》PDF 第24章 参考视频&#xff1a; https://www.bilibili.com/video/BV1JK4y1t7io?p26&vd_sourcefb8dcae0aee3f1aab700c21099045395 注意&#xff0c;一定要记得把虚拟机的网络适配…

J3-DenseNet实战

&#x1f368; 本文为&#x1f517;365天深度学习训练营 中的学习记录博客&#x1f356; 原作者&#xff1a;K同学啊 | 接辅导、项目定制 目录 环境步骤环境设置数据准备图像信息查看 模型构建模型训练模型效果展示 总结与心得体会 环境 系统: Linux语言: Python3.8.10深度学习…

接口自动化神器 apin【 快速入门篇】

关于自动化测试&#xff0c;这些年经历了太多的坑&#xff0c;有被动的坑&#xff0c;也有自己主动挖的坑&#xff0c;在这里做了一些总结。 一、apin 介绍及安装 1、什么是 apin apin是一个无需写代码&#xff0c;就可以进行接口自动化测试的框架&#xff0c;只需要通过jso…

【线路图】世微AP5160宽电压降压型恒流芯片 LED电源 带调光SOT23-6

这是一款14-18V 3A 电流的PCB设计方案. 运用的是世微AP5160 电源驱动IC,这是一款效率高&#xff0c;稳定可靠的 LED 灯恒流驱动控制芯片&#xff0c;内置高精度比较器&#xff0c;固定 关断时间控制电路&#xff0c;恒流驱动电路等&#xff0c;特别适合大功率 LED 恒流驱动。 …

59.说一下 spring 的事务隔离?

spring 的事务隔离有什么作用? 用来解决并发事务所产生一些问题,并发会产生什么问题? 1.脏读2.不可重复度3.幻影读事务隔离的概念 通过设置隔离级别可解决在并发过程中产生的那些问题分别举例说明 1.脏读 上述图表示:一个事务,读取了另一个事务中没有提交的数据,会在…