首页 > Linux操作系统 > Linux操作系统 > 使用mmv命令批量修改文件名称
| 在 Linux 中使用 mv 命令可以重命名或者移动文件及目录,但是它不支持一次重命名多个文件。本文介绍mmv的使用方式,使用通配符模式移动/复制/追加/链接多个文件 |
Centos7.7
在默认情况下,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
想删除重复的扩展名,例如扩展名是
.rar.rar.rar,只保留一个.rar,可以使用如下
命令:

[root@localhost test]# mmv '*.*.*.*' '#1.#2'
可以看到扩展名已经变成一个
.rar了。是不是很方便。
如果想要修改文件名和扩展名,但是不修改文件中的序号,可以这样做:

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

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

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

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

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

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。
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/31524109/viewspace-2739012/ ,如需转载,请注明出处,否则将追究法律责任。