在 Debian 10 中同时解压或解压缩多个文件
文件压缩是一种创建档案的方法,可以帮助我们节省时间、创造空间以及更快地下载和传输软件和数据。您可以使用压缩文件在 Internet 上分发相关文件,全部压缩为单个文件,而不会丢失任何数据。如果您的系统或外部存储设备上需要空间,您可以将文件压缩为较小的存档文件。有时我们必须一次提取多个压缩文件和 rar 文件,所有文件都位于一个文件夹中。通过 Linux UI 执行此操作相当简单;您所需要做的就是选择要提取的所有文件,右键单击,然后使用提取选项将它们一起提取。真正的问题是当我们想通过命令行执行相同的任务时。通过一一输入文件提取命令来一一提取可能会非常冗长,而且坦白说是不合逻辑的。 bash 的 for 循环来拯救了。您可以使用它一次执行多个类似的操作。
本文介绍如何在 bash shell 中使用 for 循环通过 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’ 循环的强大功能来执行各种其他类似的任务,当您逐一运行它们时,这些任务可能需要更长的时间。