【发布时间】:2017-12-20 07:18:47
【问题描述】:
有没有办法在不提取所有文件的情况下列出所有文件? AFAIK,当前工具可以列出目录/文件,但不能处理嵌套档案。 例如,我可以列出archive.tar.gz 中的所有文件,并且只提取file4 而不提取所有文件吗? 我认为理论上可以通过解析存档标题并仅提取所需的文件来完成,但在我从头开始执行此操作之前,我想知道是否有任何现有的工具/库来执行此操作。 谢谢。
archive.tar.gz
|----file1
|----dir1
| |----file2
|----archive1.tar
|----file3
|----archive2.tar.bz2
|----file4
【问题讨论】:
-
要访问file4,您必须解压archive1 和archive2。也许您可以编写代码在内存中执行此提取,而无需将嵌套存档写入文件系统。但是您必须以某种方式提取它们才能获得它们的目录和内容。
-
谢谢,我想我会更多地研究存档标题。一些 GUI 存档工具,例如 7zFM,可以像文件资源管理器一样打开递归存档文件,不确定它们是将文件提取到某个临时路径还是只是戳存档头。
标签: python gzip 7zip ziparchive