📅  最后修改于: 2023-12-03 15:37:27.193000             🧑  作者: Mango
TGZ 文件是一种压缩文件格式,通常用于打包和分发文件。Python 中有几种方法可以提取 TGZ 文件。
Python 内置 tarfile
模块可以用来处理各种类型的压缩文件,包括 TGZ 格式。以下是一个示例:
import tarfile
filename = "example.tgz"
# 打开 TGZ 文件
tar = tarfile.open(filename, "r:gz")
# 提取 TGZ 文件中的所有文件到指定目录
tar.extractall(path="/path/to/extract")
# 关闭文件
tar.close()
上述代码打开了一个名为 example.tgz
的 TGZ 文件,并提取了其中的所有文件到指定目录 /path/to/extract
。这里通过 r:gz
参数指定文件打开模式为只读打包文件并使用 gzip 压缩。extractall()
方法用于提取 TGZ 文件中的所有文件,也可以单独使用 extract(member)
方法提取某个文件。
在 Python 中还可以使用 subprocess
模块来调用系统级命令解压 TGZ 文件。以下是一个示例:
import subprocess
filename = "example.tgz"
# 调用系统命令解压 TGZ 文件
subprocess.call(["tar", "-xzf", filename, "-C", "/path/to/extract"])
上述代码使用 subprocess.call()
方法调用系统命令 tar -xzf example.tgz -C /path/to/extract
,其中 -xzf
参数用于解压 TGZ 文件,-C
参数用于指定提取文件的目标目录。
使用这种方法的优点是代码简单,但需要确保系统中安装了 tar
命令。
本文介绍了在 Python 中提取 TGZ 文件的两种方法:使用 tarfile 模块和使用 subprocess 模块。tarfile 模块是 Python 的标准库之一,适用于所有平台和 Python 版本;subprocess 模块虽然代码较为简单,但需要确保系统中有 tar 命令。根据实际情况选择不同的方法。