使用mmv命令批次修改檔名稱

在 Linux 中使用 mv 命令可以重新命名或者移動檔案及目錄,但是它不支援一次重新命名多個檔案。本文介紹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,可以使用如下命令

[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,第二個單引號裡面的引數叫做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

總結

版權宣告:本文源自 網路, 於,由 楠木軒 整理釋出,共 1063 字。

轉載請註明: 使用mmv命令批次修改檔名稱 - 楠木軒