如何在 Linux 中一次重命名多個文件
你可能已經知道,我們使用 mv
命令在類 Unix 操作系統中重命名或者移動文件和目錄。 但是,mv
命令不支持一次重命名多個文件。 不用擔心。 在本教程中,我們將學習使用 Linux 中的 mmv
命令一次重命名多個文件。 此命令用於在類 Unix 操作系統中使用標準通配符批量移動、複製、追加和重命名文件。
在 Linux 中一次重命名多個文件
mmv
程序可在基於 Debian 的系統的默認倉庫中使用。 要想在 Debian、Ubuntu、Linux Mint 上安裝它,請運行以下命令:
$ sudo apt-get install mmv
我們假設你在當前目錄中有以下文件。
$ ls
a1.txt a2.txt a3.txt
現在,你想要將所有以字母 「a」 開頭的文件重命名為以 「b」 開頭的。 當然,你可以在幾秒鐘內手動執行此操作。 但是想想你是否有數百個文件想要重命名? 這是一個非常耗時的過程。 這時候 mmv
命令就很有幫助了。
要將所有以字母 「a」 開頭的文件重命名為以字母 「b」 開頭的,只需要運行:
$ mmv a* b#1
讓我們檢查一下文件是否都已經重命名了。
$ ls
b1.txt b2.txt b3.txt
如你所見,所有以字母 「a」 開頭的文件(即 a1.txt
、a2.txt
、a3.txt
)都重命名為 b1.txt
、b2.txt
、b3.txt
。
解釋
在上面的例子中,第一個參數(a*
)是 「from」 模式,第二個參數是 「to」 模式(b#1
)。根據上面的例子,mmv
將查找任何以字母 「a」 開頭的文件名,並根據第二個參數重命名匹配的文件,即 「to」 模式。我們可以使用通配符,例如用 *
、?
和 []
來匹配一個或多個任意字元。請注意,你必須轉義使用通配符,否則它們將被 shell 擴展,mmv
將無法理解。
「to」 模式中的 #1
是通配符索引。它匹配 「from」 模式中的第一個通配符。 「to」 模式中的 #2
將匹配第二個通配符(如果有的話),依此類推。在我們的例子中,我們只有一個通配符(星號),所以我們寫了一個 #1
。並且,#
符號也應該被轉義。此外,你也可以用引號括起模式。
你甚至可以將具有特定擴展名的所有文件重命名為其他擴展名。例如,要將當前目錄中的所有 .txt
文件重命名為 .doc
文件格式,只需運行:
$ mmv *.txt #1.doc
這是另一個例子。 我們假設你有以下文件。
$ ls
abcd1.txt abcd2.txt abcd3.txt
你希望在當前目錄下的所有文件中將第一次出現的 「abc」 替換為 「xyz」。 你會怎麼做呢?
很簡單。
$ mmv '*abc*' '#1xyz#2'
請注意,在上面的示例中,模式被單引號括起來了。
讓我們檢查下 「abc」 是否實際上被替換為 「xyz」。
$ ls
xyzd1.txt xyzd2.txt xyzd3.txt
看到沒? 文件 abcd1.txt
、abcd2.txt
和 abcd3.txt
已經重命名為 xyzd1.txt
、xyzd2.txt
和 xyzd3.txt
。
mmv
命令的另一個值得注意的功能是你可以使用 -n
選項列印輸出而不是重命名文件,如下所示。
$ mmv -n a* b#1
a1.txt -> b1.txt
a2.txt -> b2.txt
a3.txt -> b3.txt
這樣,你可以在重命名文件之前簡單地驗證 mmv
命令實際執行的操作。
有關更多詳細信息,請參閱 man 頁面。
$ man mmv
更新:Thunar 文件管理器
Thunar 文件管理器默認具有內置批量重命名選項。 如果你正在使用 Thunar,那麼重命名文件要比使用 mmv
命令容易得多。
Thunar 在大多數 Linux 發行版的默認倉庫庫中都可用。
要在基於 Arch 的系統上安裝它,請運行:
$ sudo pacman -S thunar
在 RHEL、CentOS 上:
$ sudo yum install thunar
在 Fedora 上:
$ sudo dnf install thunar
在 openSUSE 上:
$ sudo zypper install thunar
在 Debian、Ubuntu、Linux Mint 上:
$ sudo apt-get install thunar
安裝後,你可以從菜單或應用程序啟動器中啟動批量重命名程序。 要從終端啟動它,請使用以下命令:
$ thunar -B
批量重命名方式如下。
單擊「+」,然後選擇要重命名的文件列表。 批量重命名可以重命名文件的名稱、文件的後綴或者同時重命名文件的名稱和後綴。 Thunar 目前支持以下批量重命名:
- 插入日期或時間
- 插入或覆蓋
- 編號
- 刪除字元
- 搜索和替換
- 大寫或小寫
當你從選項列表中選擇其中一個條件時,你將在「新名稱」列中看到更改的預覽,如下面的屏幕截圖所示。
選擇條件後,單擊「重命名文件」選項來重命名文件。
你還可以通過選擇兩個或更多文件從 Thunar 中打開批量重命名器。 選擇文件後,按 F2 或右鍵單擊並選擇「重命名」。
嗯,這就是本次的所有內容了。希望有所幫助。更多乾貨即將到來。敬請關注!
祝快樂!
via: https://www.ostechnix.com/how-to-rename-multiple-files-at-once-in-linux/
作者:SK 選題:lujun9972 譯者:Flowsnow 校對:wxy
本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive