[ad_1]
文件压缩是一种创建档案的方法,可帮助我们节省时间、创造空间以及更快地下载和传输软件和数据。 您可以使用压缩文件在互联网上分发相关文件,全部压缩成一个文件,不会丢失任何数据。 如果您的系统或外部存储设备上需要空间,您可以将文件压缩为较小的存档文件。 有时我们必须一次提取多个压缩和 rar 文件,所有文件都位于一个文件夹中。 通过 Linux UI 执行此操作相当简单; 您需要做的就是选择要提取的所有文件,右键单击,然后使用提取选项将它们完全提取。 真正的问题是当我们想通过命令行执行相同的任务时。 通过一一输入文件提取命令来一一提取可以证明是相当冗长的,而且坦率地说是不合逻辑的。 来了 bash的 for 循环来拯救。 您可以使用它一次执行多个类似的操作。
这篇文章描述了如何使用 for 循环 bash shell 通过 Debian 命令行提取以下类型的多个文件:
- 压缩文件
- tar.xz 文件
- Rar文件
- 7z 文件
我们已经在 Debian 10 Buster 系统上运行了本文中提到的命令和过程。 我们使用终端应用程序作为 Debian 命令行。 您可以通过应用程序启动器搜索打开它,如下所示:
可以使用键盘上的 Windows/Super 键访问应用程序启动器。
一次解压缩多个文件
让我们假设一个文件夹,在我们的例子中是一个“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 循环,您可以同时完成提取多个压缩文件的繁重任务。 当我们必须同时提取多达数百个压缩文件时,您在本文中学到的这项小技巧会特别方便。 不仅用于文件提取,而且您还可以使用 bash ‘for’ 循环来执行各种其他类似的任务,当您一一运行它们时可能需要更长的时间。
[ad_2]