使用mmv命令批量修改文件名称
在 Linux 中使用 mv 命令可以重命名或者移动文件及目录,但是它不支持一次重命名多个文件。本文介绍mmv的使用方式,使用通配符模式移动/复制/追加/链接多个文件
环境Centos7.7安装mmv在默认情况下,Centos7的网络源中没有mmv的安装包,我们需要先安装epel源,然后再安装mmv工具。# 下载阿里云的epel源文件。# wgethttp://mirrors.aliyun.com/repo/epel-7.repo --directory-prefix=/etc/yum.repos.d# 清楚yum缓存,并重新生成缓存# yum clean all && yum makecache# 安装mmv# yum -y install mmv
使用mmv重命名文件实例实例一想删除重复的扩展名,例如扩展名是.rar.rar.rar,只保留一个.rar,可以使用如下命令:
https://pic2.zhimg.com/80/v2-cf22f5660ca23693521f1b7773dd76f5_720w.jpg
# mmv '*.*.*.*' '#1.#2'
https://pic3.zhimg.com/80/v2-7162e5ba815e3162416b7c18ce71a726_720w.jpg
可以看到扩展名已经变成一个.rar了。是不是很方便。实例二如果想要修改文件名和扩展名,但是不修改文件中的序号,可以这样做:
https://pic1.zhimg.com/80/v2-6dd030159a70eb80061e7808c0c7d2b0_720w.jpg
# mmv 'file*.rar' 'text#1.zip'
https://pic2.zhimg.com/80/v2-0891fe3bdb023e0c55afa34d008beba9_720w.jpg
实例三将当前目录里面所有.jpeg格式的文件转换成.jpg格式:
https://pic3.zhimg.com/80/v2-daa449650aca1ba34902c1bf4cddc406_720w.jpg
# mmv '*.jpeg' '#1.jpg'
https://pic1.zhimg.com/80/v2-cb985e57972110e1b4e07b7cff54de58_720w.jpg
实例四将当前目录中的.html.cn,.html.en,.html.de修改为 cn.html,en.html,de.html
https://pic2.zhimg.com/80/v2-dd08ba7e993875328204fdd06669bf8d_720w.jpg
# mmv '*.html.??' '#1.#2#3.html'
https://pic2.zhimg.com/80/v2-6aadf495caf3de4125e98fded8cd7e51_720w.jpg
解释Mmv后面第一个单引号里的参数叫做From,第二个单引号里面的参数叫做To。From中可以使用的通配符有*、?、[]、;。To中可以使用的通配符是#1,#2,#3…等。#号加数字形式,对应着From中的每一个通配符。例如:# mmv '*.html.??' '#1.#2#3.html'
这个例子中,From模式是'*.html.??',To模式是 '#1.#2#3.html'。From模式中有三个通配符,*,?,?。To模式中也对应着From模式#1,#2,#3。总结想了解更多信息,可以查看手册# man mmv。
页:
[1]