当前位置: 首页 > article >正文

掌握 Ubuntu 终端 mv 与 rename 命令的高效重命名使用方法

在日常的计算任务中,文件重命名是一个经常性的需求。对于熟悉图形用户界面(GUI)的人来说,通过右键点击并选择“重命名”选项,这个过程简单直接。然而,当涉及到大量文件或需要自动化流程时,命令行提供了更强大、灵活的解决方案。

在 Ubuntu 中优雅地重命名文件

重命名单个文件:简洁而直接

Ubuntu 的终端提供了一个名为 mv 的命令,它最初设计用于移动文件,但也可以用来重命名文件。其基本语法非常直观:

mv OLD_NAME NEW_NAME

这里,OLD_NAME 是现有文件名,而 NEW_NAME 则是您希望赋予它的新名称。例如,如果您想要将一个名为 pls_rename.txt 的文件重命名为 renamed_it.txt,您可以这样做:
 

$ ls *.txt
pls_rename.txt
$ mv -v pls_rename.txt renamed_it.txt
renamed 'pls_rename.txt' -> 'renamed_it.txt'
$ ls *.txt
renamed_it.txt

使用 -v 参数可以让 mv 命令显示详细的输出,告知您哪些文件被重命名了。这在处理多个文件时尤其有用。

批量重命名文件:效率与灵活性兼备

当面对大量文件需要重命名时,逐一手动操作显然不切实际。幸运的是,Ubuntu 提供了一个叫做 rename 的工具,专门用于批量重命名文件。它利用正则表达式来匹配和替换文件名中的模式,极大提高了工作效率。

首先,您需要安装 rename 工具,因为它通常不在默认安装中包含:

sudo apt install rename

安装完成后,您可以使用以下语法进行批量重命名:

rename PERL-REGEX FILES

其中 PERL-REGEX 表示 Perl 风格的正则表达式,FILES 是要处理的文件列表。例如,要将所有 .txt 文件扩展名改为 .jpeg,您可以执行:

$ rename -v 's/.txt/.jpeg/' *.txt
image_1.txt renamed as image_1.jpeg
image_2.txt renamed as image_2.jpeg
...

rename 命令同样支持复杂的字符转换。比如,如果您想把所有小写字母变为大写,可以这样做:

$ rename -v 'y/a-z/A-Z/' *
i_am_not_screaming renamed as I_AM_NOT_SCREAMING
maybe_i_am_screaming renamed as MAYBE_I_AM_SCREAMING
who_knows renamed as WHO_KNOWS
安全性优先:预览更改以防错误

考虑到批量操作可能带来的风险,rename 提供了一个非常有用的选项 --nono,它可以模拟命令的效果而不真正修改文件。这意味着您可以先看到预期的变化,确认无误后再执行实际的重命名操作。这就好比是做一次“试运行”,确保一切按计划进行。

$ rename --nono 's/.jpeg/.txt/' *.jpeg
rename(image_1.jpeg, image_1.txt)
rename(image_2.jpeg, image_2.txt)
...

正如上面的例子所示,虽然看起来文件已经被重命名,但实际上它们并没有改变。直到您移除 --nono 选项并重新运行命令,才会真正生效。

无论是简单的单个文件重命名还是复杂的批量处理,Ubuntu 终端都提供了强大的工具来满足您的需求。mv 和 rename 这两个命令不仅简化了日常任务,还为高级用户提供了足够的灵活性和控制力。掌握这些技能,您就能更加自信地管理和组织您的文件系统。

当然,如果您使用的是 Windows 和 Mac 系统,那么你也可以使用简鹿文件批量重命名,它提供了一个完整的 GUI 界面,让文件或文件夹重命名操作起来更轻松快捷。


http://www.kler.cn/a/502418.html

相关文章:

  • Redis快速入门店铺营业状态设置
  • 利用AI大模型和Mermaid生成流程图
  • springboot 加载本地jar到maven
  • nginx-lua模块安装
  • C# 迭代,递归,回调--13
  • mysql存储过程创建与删除(参数输入输出)
  • STM32-笔记42-实时时钟项目
  • uniapp 抖音小程序 getUserProfile:fail must be invoked by user tap gesture
  • CMake学习笔记(1)
  • 开源免费的下载工具AB Download Manager
  • 中等难度——python实现电子宠物和截图工具
  • 概率输出和独热分割掩码的主要区别:
  • 每日学习30分轻松掌握CursorAI:Cursor基础设置与配置
  • 商用服务器密码机的加密技术与优势
  • Win32汇编学习笔记11.游戏辅助的实现
  • fft分析数据求bode图原理
  • 【SQL】进阶知识 -- 删除表的几种方法(包含表内单个字段的删除方法)
  • html5各行各业官网模板源码下载 (4)
  • 初识@ffmpeg/ffmpeg库
  • Docker启动失败 - 解决方案
  • JavaScript 学习总结
  • linux设置http,https代理
  • 系统看门狗配置--以ubuntu为例
  • 数据分析-使用Excel透视图/表分析禅道数据
  • linux网络 | 深度理解https加密过程 | 模拟设计方案
  • Springcloudgateway 请求无响应,要怎么处理