新闻中心

Linux 批量重命名文件怎么做?三种方式最简单

2025-12-05
浏览次数:
返回列表
推荐使用rename命令,功能强大且简洁:Perl版rename支持正则表达式,可直接批量修改后缀、大小写或空格,如rename 's/.txt$/.log/' *.txt;若系统无Perl版rename,可安装或改用mmv工具,其模式匹配语法直观安全,如mmv 'a?.txt' 'new#1.txt';最通用方式是for循环配合mv,适用于所有系统,如for f in *.log; do mv "$f" "backup_$f"; done,注意加双引号防空格错误并先用echo测试。

linux 批量重命名文件怎么做?三种方式最简单

Linux 批量重命名文件,不用写脚本也能搞定。最常用、最稳妥的三种方式是:rename 命令(Perl 版)、mmv 工具、for 循环配合 mv。选哪个取决于你系统有没有预装、想不想装新工具,以及重命名规则的复杂程度。

用 rename(推荐,功能强又简洁)

多数较新的发行版(如 Ubuntu 22.04+、Debian、Fedora)自带的是 Perl 版 rename,支持正则表达式,一行就能干很多事。

  • 把所有 .txt 改成 .log
    rename 's/\.txt$/.log/' *.txt
  • 把文件名全转小写:
    rename 'y/A-Z/a-z/' *
  • 去掉文件名里的空格并替换成下划线:
    rename 's/ /_/g' *

⚠️ 注意:有些老系统(如 CentOS 7)默认装的是 C 版 rename(功能极简),不支持正则。可先运行 rename --version 看输出是否含 “perl”。不是的话,建议用 sudo apt install rename(Deb 系)或 sudo dnf install perl-rename(RHEL/Fedora 系)换掉。

用 mmv(专为批量移动/重命名设计)

mmv 是轻量级专用工具,语法直观,适合模式匹配类重命名,比如 file1.txt → file001.txt 这种编号补零。

Writer Writer

企业级AI内容创作工具

Writer 220 查看详情 Writer
  • 安装:
    sudo apt install mmv(Ubuntu/Debian)或 sudo yum install mmv(CentOS 7,需 EPEL)
  • a1.txt, a2.txt 重命名为 new1.txt, new2.txt
    mmv 'a?.txt' 'new#1.txt'
  • 把所有 IMG_*.jpg 改成 photo_*.jpg
    mmv 'IMG_*.jpg' 'photo_#1.jpg'

#1 表示匹配第一个通配符的内容,安全、不易误操作,适合习惯 shell 通配符的人。

用 for 循环 + mv(通用、无需额外安装)

所有 Linux 都有 bashmv,这是最“原生”的方式,适合简单替换或加前缀/后缀。

  • 给所有 .log 文件加 backup_ 前缀:
    for f in *.log; do mv "$f" "backup_$f"; done
  • 把 foo1, foo2… 重命名为 bar1, bar2…(假设只有数字结尾):
    for f in foo[0-9]*; do mv "$f" "${f/foo/bar}"; done
  • ⚠️ 关键细节:
    – 一定要用 "$f" 加双引号,防文件名含空格出错
    – 复杂字符串替换建议先用 echo 测试,比如 echo mv "$f" ... 看结果对不对再删 echo 执行

基本上就这些。rename 最灵活,mmv 最专注,for 循环最通用——按需选一个,试两行就上手了。

以上就是Linux 批量重命名文件怎么做?三种方式最简单的详细内容,更多请关注其它相关文章!


# 服务管理  # 扬州推广网站查询  # 金华seo推广价格优惠  # 比较大的seo公司  # 家具网站建设服务  # 网络营销的推广哪家专业  # 网站建设收益转化率  # 什么是seo seo的好处  # 宜昌网站建设动态  # 大型网站建设详细策划  # 博客营销推广有哪些  # 命名为  # 先用  # linux  # 运行环境  # 最简单  # 怎么做  # 的是  # 三种  # 重命名  # dnf  # 工具  # ubuntu  # 正则表达式  # centos 


相关栏目: 【 科技资讯46185 】 【 网络学院92790


相关推荐: 使用J*aScript检测输入元素是否包含在特定类中  XML中包含HTML标签导致解析错误? 正确嵌入非XML数据的两种方法  初次安装JDK时环境变量如何正确配置_J*A_HOME与PATH设置规则讲解  QQ邮箱官方网站登录入口_QQ邮箱网页版在线使用  QQ邮箱登录平台入口 QQ邮箱网页版邮箱官方入口  腾讯视频怎么举报不良内容_腾讯视频内容举报流程与违规信息处理方法  曝R星经典之作开发图 设计简陋但信息密集!  NVIDIA股价11月重挫12%:下月有望好转 但难回5万亿美元巅峰  妖精漫画网页版登录入口免费_妖精漫画官网主页直接阅读漫画  C++如何打印当前代码行号与文件名_C++预定义宏FILE与LINE的使用  微信网页版登录教程_微信网页版登录入口在哪  b站赚钱渠道_b站收益来源  win11开机启动修复循环怎么办 Win11无法进入系统高级启动解决方法【修复】  《燕云十六声》两周内达九百万玩家!位居畅销榜第五  电脑IP地址怎么查 查看本机IP地址的几种方法  css元素hover动画延迟生效怎么办_使用animation-delay调整触发时间  神庙逃亡小游戏在线玩 神庙逃亡小游戏入口  UC浏览器网页版登录入口官网 电脑版网址入口  c++中的std::launder有什么实际用途_c++对象生命周期与指针优化  qq游戏免费畅玩入口_qq游戏电脑版快速启动  优化大型XML文件解析:基于Python流式处理的内存高效方案  c++如何实现一个简单的软件渲染器_c++从零开始的3D图形学  Tabulator表格日期时间排序问题及自定义解决方案  css链接悬停下划线样式如何自定义_使用::after结合content和transition  Golang如何优雅处理error_Golang error处理最佳实践总结  php源码怎么看淘宝客系统_看php源码淘宝客系统技巧  如何有效阻止外部脚本意外修改内联样式的高度属性  火狐浏览器占用内存高卡顿怎么办 火狐浏览器性能优化设置技巧  Lar*el Excel导入时生成自定义递增ID的策略与实践  京东单号查询入口_京东快递订单追踪入口  C++如何进行游戏物理模拟_使用Box2D库为C++游戏添加2D物理效果  Golang如何使用new_Go new分配内存机制讲解  如何在Promise链中优雅地中断后续then执行  漫蛙manwa官网登录界面_漫蛙漫画网页版主站入口  如何在Python中使用Optional类型处理可变对象并避免Pylint警告  顺丰快件物流信息 官方网站查询入口  CSS布局中意外空白:解决padding-top导致的顶部间距问题  机构:以往存储涨价周期小米利润率实际上有所改善 能转嫁给消费者等  Win11怎么开启卓越性能模式 Win11电源选项启用高性能释放硬件潜力【方法】  顺丰快递查询系统 官方正版查询入口  AO3官方在线访问地址 Archive of Our Own最新镜像合集  深入理解J*a链表中的IPosition接口与使用  Golang指针如何与map组合使用_Golang map指针组合实践  理解J*aScript Promise的微任务队列与执行顺序  如何使 Jest 模拟函数默认抛出错误以提高测试效率  Excel如何用迷你图显趋势_Excel用迷你图显趋势【趋势小图】  css绝对定位元素脱离父容器怎么办_确保父元素position非static  如何在J*a中使用Locale处理多语言环境  向日葵客户端怎么进行远程CentOS控制_向日葵客户端远程CentOS控制操作教程  谷歌浏览器怎么给标签页静音_Chrome标签静音快捷操作 

搜索