0
点赞
收藏
分享

微信扫一扫

使用mmv命令批量修改文件名称

微笑沉默 2022-02-15 阅读 198


在 ​​Linux​​ 中使用 mv ​​命令​​可以重命名或者移动文件及目录,但是它不支持一次重命名多个文件。本文介绍mmv的使用方式,使用通配符模式移动/复制/追加/链接多个文件

环境

​​Centos​​7.7

安装mmv

在默认情况下,Centos7的网络源中没有mmv的安装包,我们需要先安装epel源,然后再安装mmv工具。

# 下载阿里云的epel源文件。
[root@localhost ~]# wget http://mirrors.aliyun.com/repo/epel-7.repo --directory-prefix=/etc/yum.repos.d
# 清楚yum缓存,并重新生成缓存
[root@localhost ~]# yum clean all && yum makecache
# 安装mmv
[root@localhost ~]# yum -y install mmv

使用mmv重命名文件实例实例一

想删除重复的扩展名,例如扩展名是​​.rar.rar.rar​​​,只保留一个.rar,可以使用如下​​命令​​:

使用mmv命令批量修改文件名称_重命名

[root@localhost test]# mmv '*.*.*.*' '#1.#2'

使用mmv命令批量修改文件名称_重命名_02

可以看到扩展名已经变成一个​​.rar​​了。是不是很方便。

实例二

如果想要修改文件名和扩展名,但是不修改文件中的序号,可以这样做:

使用mmv命令批量修改文件名称_重命名_03

[root@localhost test]# mmv 'file*.rar' 'text#1.zip'

使用mmv命令批量修改文件名称_扩展名_04

实例三

将当前目录里面所有.jpeg格式的文件转换成.jpg格式:

使用mmv命令批量修改文件名称_扩展名_05

[root@localhost test]# mmv '*.jpeg' '#1.jpg'

使用mmv命令批量修改文件名称_html_06

实例四

将当前目录中的​​.html.cn​​​,​​.html.en​​​,​​.html.de​​​修改为​​ cn.html​​​,​​en.html​​​,​​de.html​

使用mmv命令批量修改文件名称_扩展名_07

[root@localhost test]# mmv '*.html.??' '#1.#2#3.html'

使用mmv命令批量修改文件名称_重命名_08

解释

Mmv后面第一个单引号里的参数叫做​​From​​​,第二个单引号里面的参数叫做​​To​​​。​​From​​​中可以使用的通配符有​​*​​​、​​?​​​、​​[]​​​、​​;​​​。​​To​​​中可以使用的通配符是​​#1,#2,#3…​​​等。#号加数字形式,对应着​​From​​中的每一个通配符。

例如:

[root@localhost test]# mmv '*.html.??' '#1.#2#3.html'

这个例子中,From模式是​​'*.html.??'​​​,To模式是​​ '#1.#2#3.html'​​​。From模式中有三个通配符,​​*​​​,​​?​​​,​​?​​​。To模式中也对应着From模式​​#1​​​,​​#2​​​,​​#3​​。

总结

想了解更多信息,可以查看手册​​# man mmv​​。



举报

相关推荐

0 条评论