如何批量重命名Linux文件?rename和mmv命令高效批量改名方案

发布时间 - 2025-06-26 00:00:00    点击率:

在linux中批量重命名文件可用rename和mmv命令。rename支持正则表达式,适用于统一替换操作,如修改后缀、加前缀、去空格等;使用格式为rename 's/原内容/新内容/' 文件列表。mmv适合结构化重命名,支持通配符匹配,常用于编号重组、路径拼接等场景;语法为mmv "匹配模式" "替换模式"。rename灵活但需注意转义字符,mmv直观但需用双引号包裹模式;简单替换用rename,复杂结构用mmv。

在Linux系统中,批量重命名文件是常见的操作需求,比如整理照片、日志文件归档、数据预处理等。如果你还在手动一个一个改名,那确实有点费劲了。其实,用好 renamemmv 这两个命令,可以非常高效地完成批量重命名任务。

一、rename:基础又强大的批量改名利器

rename 命令支持正则表达式,适合做统一格式的替换操作,比如去掉空格、添加前缀、修改扩展名等。

使用方法:

rename 's/原内容/新内容/' 文件列表

举个例子,把所有 .txt 文件改成 .log

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

注意这里用了 Perl 兼容的正则语法,所以括号、点号这些特殊字符要加反斜杠转义。

常见用途:

  • 批量去除文件名中的空格(替换为空):

    rename 's/ //g' *.jpg
  • 给文件统一加前缀:

    rename 's/^/photo_/' *.jpg
  • 修改后缀名:

    rename 's/\.bak$/.old/' *.bak

⚠️ 小提示:建议先加上 -n 参数测试效果,确认没问题再执行真实操作。


二、mmv:适合复杂匹配与结构化重命名

mmv 是另一个专门用于批量移动、复制、追加和重命名文件的工具,尤其适合有规律的文件名转换,比如按编号排序、拼接路径等。

不过默认很多系统没装这个命令,你需要先安装:

sudo apt install mmv   # Debian/Ubuntu
sudo yum install mmv   # CentOS

基本语法:

mmv "匹配模式" "替换模式"

比如,将 file1.txt, file2.txt 改为 newfile1.txt, newfile2.txt

mmv "file*.txt" "newfile#1.txt"

这里的 #1 表示第一个通配符的内容。

实际应用场景:

  • 给文件加固定前缀:

    mmv "*.log" "backup_#1.log"
  • 交换文件名顺序(比如从“年月日”改为“日月年”):

    mmv "[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]" "#4#5#6#7#8#1#2#3"

    这样 20250315 就会变成 15202503

  • 多层目录下批量重命名:

    find . -name "*.tmp" -exec mmv "{}" "{}.old" \;

? 使用技巧mmv 的模式匹配比较严格,记得引号要用双引号,避免被 shell 提前解析。


三、什么时候用哪个?

简单总结一下两者适用场景:

  • rename 更适合基于正则表达式的灵活替换,适合有一定脚本经验的人;
  • mmv 更适合结构化的、有编号或固定格式的批量重命名,逻辑更直观。

如果你只是想统一替换某个字符串,或者调整大小写,rename 足够了;但如果你要做复杂的编号重组、路径拼接,那就更适合用 mmv


基本上就这些。这两个命令都不复杂,但在实际使用时容易忽略一些细节,比如是否需要转义字符、是否要测试运行等。用好了,它们能大大提升你处理文件的效率


# linux  # centos  # 工具  # perl  # 正则表达式  # 字符串  # 重命名  # 如果你  # 更适合  # 结构化  # 这两个  # 文件列表  # 用好  # 的人  # 就会 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: 移动端手机网站制作软件,掌上时代,移动端网站的谷歌SEO该如何做?  如何在云指建站中生成FTP站点?  成都品牌网站制作公司,成都营业执照年报网上怎么办理?  消息称 OpenAI 正研发的神秘硬件设备或为智能笔,富士康代工  制作无缝贴图网站有哪些,3dmax无缝贴图怎么调?  如何在阿里云虚拟服务器快速搭建网站?  怎么制作网站设计模板图片,有电商商品详情页面的免费模板素材网站推荐吗?  哪家制作企业网站好,开办像阿里巴巴那样的网络公司和网站要怎么做?  如何用好域名打造高点击率的自主建站?  西安市网站制作公司,哪个相亲网站比较好?西安比较好的相亲网站?  详解Android中Activity的四大启动模式实验简述  如何挑选最适合建站的高性能VPS主机?  Laravel安装步骤详细教程_Laravel环境搭建指南  北京企业网站设计制作公司,北京铁路集团官方网站?  如何快速搭建虚拟主机网站?新手必看指南  中山网站制作网页,中山新生登记系统登记流程?  Laravel广播系统如何实现实时通信_Laravel Reverb与WebSockets实战教程  Java类加载基本过程详细介绍  Laravel怎么实现观察者模式Observer_Laravel模型事件监听与解耦开发【指南】  教你用AI润色文章,让你的文字表达更专业  CSS3怎么给轮播图加过渡动画_transition加transform实现【技巧】  laravel服务容器和依赖注入怎么理解_laravel服务容器与依赖注入解析  Laravel如何使用Gate和Policy进行权限控制_Laravel权限判定与策略规则配置  Laravel的路由模型绑定怎么用_Laravel Route Model Binding简化控制器逻辑  Edge浏览器怎么启用睡眠标签页_节省电脑内存占用优化技巧  美食网站链接制作教程视频,哪个教做美食的网站比较专业点?  弹幕视频网站制作教程下载,弹幕视频网站是什么意思?  ,南京靠谱的征婚网站?  如何在服务器上三步完成建站并提升流量?  Laravel如何实现本地化和多语言支持?(i18n教程)  Laravel Seeder怎么填充数据_Laravel数据库填充器的使用方法与技巧  Laravel如何实现数据导出到CSV文件_Laravel原生流式输出大数据量CSV【方案】  如何自定义建站之星模板颜色并下载新样式?  Python并发异常传播_错误处理解析【教程】  Android自定义listview布局实现上拉加载下拉刷新功能  文字头像制作网站推荐软件,醒图能自动配文字吗?  Laravel如何记录日志_Laravel Logging系统配置与自定义日志通道  Laravel怎么实现验证码(Captcha)功能  标准网站视频模板制作软件,现在有哪个网站的视频编辑素材最齐全的,背景音乐、音效等?  如何在 React 中条件性地遍历数组并渲染元素  php中::能调用final静态方法吗_final修饰静态方法调用规则【解答】  Laravel如何处理异常和错误?(Handler示例)  Python制作简易注册登录系统  高防服务器租用指南:配置选择与快速部署攻略  Linux虚拟化技术教程_KVMQEMU虚拟机安装与调优  Laravel中间件如何使用_Laravel自定义中间件实现权限控制  Laravel如何安装Breeze扩展包_Laravel用户注册登录功能快速实现【流程】  Laravel怎么集成Log日志记录_Laravel单文件与每日日志配置及自定义通道【详解】  原生JS实现图片轮播切换效果  智能起名网站制作软件有哪些,制作logo的软件?