如何在 Linux 中同時解壓或解壓多個文件

有時我們必須一次提取多個壓縮和 rar 文件,所有文件都位於一個文件夾中。 通過 Ubuntu UI 執行此操作相當簡單; 您需要做的就是選擇要提取的所有文件,右鍵單擊並使用“提取”選項將它們完全提取。 真正的問題是當我們想通過命令行執行相同的任務時。 通過一一輸入文件提取命令來單獨提取它們可能會被證明是相當冗長的,而且坦率地說是不合邏輯的。 某物(人)到了 bash for 循環來拯救。 您可以使用它一次執行多個類似的操作。

本文介紹如何使用 for 循環通過 Ubuntu 命令行提取以下類型的多個文件:

  • 壓縮文件
  • tar.xz 文件
  • Rar文件
  • 7z 文件

我們已經在 Ubuntu 18.04 LTS 系統上運行了本文中提到的命令和過程。 我們的示例 zip 和 tar 文件夾分別包含 4 個壓縮和 rar 文件類型的壓縮文件。 我們正在使用終端應用程序來使用 Ubuntu 命令行。 您可以通過系統 Dash 或 Ctrl+alt+T 快捷鍵打開它。

一次解壓縮多個文件

讓我們假設一個文件夾,在我們的例子中是一個“zip_files”文件夾,包含多個壓縮文件,我們希望同時提取它們。

以下是如何使用 for 循環使任務變得簡單:

$ for z in *.zip
do
  unzip $z;
done

以下是通過一個命令完成相同任務的方法:

$ for z in *.zip; do unzip "$z"; done

一次提取多個 tar.xz 文件

讓我們假設一個文件夾包含多個 tar.xz 文件,我們希望同時提取它們。

以下是如何使用 for 循環使任務變得簡單:

$ for z in *.tar.xz
do
  tar -xf $z;
done

以下是通過一個命令完成相同任務的方法:

$ for z in *.tar.xz; do tar -xf "$z"; done

一次解壓縮多個文件

使用以下命令一次解壓縮多個 rar 文件。

$ for z in *.rar
do
  unrar e $z;
done

或者,

$ for f in *.rar; do unrar e “$f”; done

一次提取多個 7z 文件

使用以下命令一次提取多個 7z 文件。

$ for z in *.7z
do
7z e $z;
done

或者,

$ for z in *.7z; do 7z e "$z"; done

通過使用 bash for 循環,您可以完成一次提取多個壓縮文件的繁忙任務。 當我們必須同時提取多達數百個壓縮文件時,您在本文中學到的這項小技巧會特別方便。 不僅用於文件提取,您還可以利用 for 循環的強大功能來執行各種其他類似任務,這些任務在您一一運行時可能需要更長的時間。