歡迎光臨
每天分享高質量文章

如何在 Linux 中一次重命名多個檔案 | Linux 中國

在本教程中,我們將學習使用 Linux 中的 mmv 命令一次重命名多個檔案。 此命令用於在類 Unix 操作系統中使用標準通配符批量移動、複製、追加和重命名檔案。
— Sk


致謝
編譯自 | 
https://www.ostechnix.com/how-to-rename-multiple-files-at-once-in-linux/
 
 作者 | Sk
 譯者 | Liang Chen (Flowsnow) ????共計翻譯:29.0 篇 貢獻時間:1066 天

你可能已經知道,我們使用 mv 命令在類 Unix 操作系統中重命名或者移動檔案和目錄。 但是,mv 命令不支持一次重命名多個檔案。 不用擔心。 在本教程中,我們將學習使用 Linux 中的 mmv 命令一次重命名多個檔案。 此命令用於在類 Unix 操作系統中使用標準通配符批量移動、複製、追加和重命名檔案。

在 Linux 中一次重命名多個檔案

mmv 程式可在基於 Debian 的系統的預設倉庫中使用。 要想在 Debian、Ubuntu、Linux Mint 上安裝它,請運行以下命令:

  1. $ sudo apt-get install mmv

我們假設你在當前目錄中有以下檔案。

  1. $ ls

  2. a1.txt a2.txt a3.txt

現在,你想要將所有以字母 “a” 開頭的檔案重命名為以 “b” 開頭的。 當然,你可以在幾秒鐘內手動執行此操作。 但是想想你是否有數百個檔案想要重命名? 這是一個非常耗時的過程。 這時候 mmv 命令就很有幫助了。

要將所有以字母 “a” 開頭的檔案重命名為以字母 “b” 開頭的,只需要運行:

  1. $ mmv a\* b\#1

讓我們檢查一下檔案是否都已經重命名了。

  1. $ ls

  2. b1.txt b2.txt b3.txt

如你所見,所有以字母 “a” 開頭的檔案(即 a1.txta2.txta3.txt)都重命名為 b1.txtb2.txtb3.txt

解釋

在上面的例子中,第一個引數(a\*)是 “from” 樣式,第二個引數是 “to” 樣式(b\#1)。根據上面的例子,mmv 將查找任何以字母 “a” 開頭的檔案名,並根據第二個引數重命名匹配的檔案,即 “to” 樣式。我們可以使用通配符,例如用 *? 和 [] 來匹配一個或多個任意字符。請註意,你必須轉義使用通配符,否則它們將被 shell 擴展,mmv 將無法理解。

“to” 樣式中的 #1 是通配符索引。它匹配 “from” 樣式中的第一個通配符。 “to” 樣式中的 #2 將匹配第二個通配符(如果有的話),依此類推。在我們的例子中,我們只有一個通配符(星號),所以我們寫了一個 #1。並且,# 符號也應該被轉義。此外,你也可以用引號括起樣式。

你甚至可以將具有特定擴展名的所有檔案重命名為其他擴展名。例如,要將當前目錄中的所有 .txt 檔案重命名為 .doc 檔案格式,只需運行:

  1. $ mmv \*.txt \#1.doc

這是另一個例子。 我們假設你有以下檔案。

  1. $ ls

  2. abcd1.txt abcd2.txt abcd3.txt

你希望在當前目錄下的所有檔案中將第一次出現的 “abc” 替換為 “xyz”。 你會怎麼做呢?

很簡單。

  1. $ mmv '*abc*' '#1xyz#2'

請註意,在上面的示例中,樣式被單引號括起來了。

讓我們檢查下 “abc” 是否實際上被替換為 “xyz”。

  1. $ ls

  2. xyzd1.txt xyzd2.txt xyzd3.txt

看到沒? 檔案 abcd1.txtabcd2.txt 和 abcd3.txt 已經重命名為 xyzd1.txtxyzd2.txt 和 xyzd3.txt

mmv 命令的另一個值得註意的功能是你可以使用 -n 選項打印輸出而不是重命名檔案,如下所示。

  1. $ mmv -n a\* b\#1

  2. a1.txt -> b1.txt

  3. a2.txt -> b2.txt

  4. a3.txt -> b3.txt

這樣,你可以在重命名檔案之前簡單地驗證 mmv 命令實際執行的操作。

有關更多詳細信息,請參閱 man 頁面。

  1. $ man mmv

更新:Thunar 檔案管理器

Thunar 檔案管理器預設具有內置批量重命名選項。 如果你正在使用 Thunar,那麼重命名檔案要比使用 mmv 命令容易得多。

Thunar 在大多數 Linux 發行版的預設倉庫庫中都可用。

要在基於 Arch 的系統上安裝它,請運行:

  1. $ sudo pacman -S thunar

在 RHEL、CentOS 上:

  1. $ sudo yum install thunar

在 Fedora 上:

  1. $ sudo dnf install thunar

在 openSUSE 上:

  1. $ sudo zypper install thunar

在 Debian、Ubuntu、Linux Mint 上:

  1. $ sudo apt-get install thunar

安裝後,你可以從選單或應用程式啟動器中啟動批量重命名程式。 要從終端啟動它,請使用以下命令:

  1. $ thunar -B

批量重命名方式如下。

單擊“+”,然後選擇要重命名的檔案串列。 批量重命名可以重命名檔案的名稱、檔案的後綴或者同時重命名檔案的名稱和後綴。 Thunar 目前支持以下批量重命名:

◈ 插入日期或時間
◈ 插入或改寫
◈ 編號
◈ 刪除字符
◈ 搜索和替換
◈ 大寫或小寫

當你從選項串列中選擇其中一個條件時,你將在“新名稱”列中看到更改的預覽,如下麵的屏幕截圖所示。

選擇條件後,單擊“重命名檔案”選項來重命名檔案。

你還可以通過選擇兩個或更多檔案從 Thunar 中打開批量重命名器。 選擇檔案後,按 F2 或右鍵單擊並選擇“重命名”。

嗯,這就是本次的所有內容了。希望有所幫助。更多乾貨即將到來。敬請關註!

祝快樂!


via: https://www.ostechnix.com/how-to-rename-multiple-files-at-once-in-linux/

作者:SK[2] 選題:lujun9972 譯者:Flowsnow 校對:wxy

本文由 LCTT 原創編譯,Linux中國 榮譽推出

赞(0)

分享創造快樂