📅  最后修改于: 2023-12-03 14:51:43.704000             🧑  作者: Mango
在 Linux 环境下,我们经常需要处理一些需要解压缩的文件,比如压缩包、归档文件等。当我们需要解压缩多个文件时,逐个操作是非常麻烦和费时的。本文将介绍如何一次解压缩多个文件 Linux - Shell/Bash。
如果要解压缩的文件是归档文件,比如 tar、tar.gz、tar.bz2 等格式,可以使用 tar 命令进行解压缩。
tar 命令的基本语法:
$ tar <option> <files>
其中 <option>
是 tar 命令的选项,<files>
是要解压缩的文件列表。
如果要解压缩多个归档文件,可以将文件名组成一个列表,然后在 tar 命令中使用该列表。
例如,解压缩 file1.tar.gz
和 file2.tar.gz
:
$ tar -zxvf file1.tar.gz file2.tar.gz
该命令将会在当前目录下解压缩 file1.tar.gz
和 file2.tar.gz
文件。
如果要解压缩的文件是压缩包,比如 zip、rar 等格式,可以使用 unzip 命令进行解压缩。
unzip 命令的基本语法:
$ unzip <option> <files>
其中 <option>
是 unzip 命令的选项,<files>
是要解压缩的文件列表。
如果要解压缩多个压缩包,可以将文件名组成一个列表,然后在 unzip 命令中使用该列表。
例如,解压缩 file1.zip
和 file2.zip
:
$ unzip file1.zip file2.zip
该命令将会在当前目录下解压缩 file1.zip
和 file2.zip
文件。
除了使用 tar 和 unzip 命令进行解压缩,还可以使用 for 循环批量解压缩文件。该方法适用于需要批量处理多种类型的文件的情况。
假设要解压缩当前目录下所有的 tar.gz 文件,可以使用以下 for 循环:
$ for file in *.tar.gz; do tar -zxvf $file; done
该命令将会依次读取当前目录下所有的 tar.gz 文件,然后使用 tar 命令进行解压缩。
同样的,如果要解压缩当前目录下所有的 zip 文件,可以使用以下 for 循环:
$ for file in *.zip; do unzip $file; done
本文介绍了三种方法来一次解压缩多个文件:使用 tar 命令解压归档文件、使用 unzip 命令解压压缩包、使用 for 循环批量解压缩文件。以上方法均适用于 Linux 环境下进行操作。