这篇文章主要介绍了linux中如何使用mmv命令,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

在Linux系统中mmv命令主要用于重命名或者移动文件及目录,但是有一定的局限性,mmv命令不支持一次重命名多个文件。

linux中如何使用mmv命令-风君雪科技博客

环境

Centos7.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,可以使用如下命令: linux中如何使用mmv命令-风君雪科技博客

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

linux中如何使用mmv命令-风君雪科技博客 可以看到扩展名已经变成一个.rar了。是不是很方便。

实例二

如果想要修改文件名和扩展名,但是不修改文件中的序号,可以这样做: linux中如何使用mmv命令-风君雪科技博客

[root@localhost test]# mmv 'file*.rar' 'text#1.zip'
linux中如何使用mmv命令-风君雪科技博客
使用mmv命令批量修改文件名称使用mmv命令批量修改文件名称
实例三

将当前目录里面所有.jpeg格式的文件转换成.jpg格式: linux中如何使用mmv命令-风君雪科技博客

[root@localhost test]# mmv '*.jpeg' '#1.jpg'
linux中如何使用mmv命令-风君雪科技博客
使用mmv命令批量修改文件名称使用mmv命令批量修改文件名称
实例四

将当前目录中的.html.cn,.html.en,.html.de修改为cn.html,en.html,de.html linux中如何使用mmv命令-风君雪科技博客

[root@localhost test]# mmv '*.html.??' '#1.#2#3.html'
linux中如何使用mmv命令-风君雪科技博客
使用mmv命令批量修改文件名称使用mmv命令批量修改文件名称
解释

Mmv后面第一个单引号里的参数叫做From,第二个单引号里面的参数叫做ToFrom中可以使用的通配符有*?[];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