首页 > 解决方案 > 我可以使用 python 的 tarfile 包将快速查找索引存储到 tar 文件吗?

问题描述

我有一个大的 tar 存档并且正在使用 python (3.6+) 和tarfile包。

如果我使用tar_info = tarfile.getmember(filename)I can then call tarfile.extract(tar_info),但调用extract速度很慢,似乎在扫描文件,在大型存档上需要几分钟时间。

我看到tar_info对象中有一个偏移量,所以看起来这应该是一个快速的查找和读取操作。

我想知道是否有一种方法可以将索引存储到 tar 文件中,这样就可以快速查找和读取操作来提取任何特定文件,因为我在 tar 文件之外索引了必要的信息。

标签: pythontar

解决方案


这个 superuser.com 问题由 John Szakmeister 在评论中回答,谢谢!

https://superuser.com/questions/655739/extract-single-file-from-huge-tgz-file/655802#655802

简短的回答:如果您启用压缩,它会在 tar 存档中流式传输,而不是每个文件,所以答案是否定的。


推荐阅读