我有一个大型的tar存档,正在使用python(3.6+)和tarfile
软件包。
如果我使用tar_info = tarfile.getmember(filename)
,则可以调用tarfile.extract(tar_info)
,但是对extract
的调用很慢,似乎正在扫描文件,在大型归档文件上花费了很多时间。
我看到tar_info
对象中有一个偏移量,因此看来这应该是一种快速的查找和读取操作。
我想知道是否有一种方法可以将索引存储到tar文件中,从而使得 是一种快速查找和读取操作,可以提取任何特定文件,前提是我拥有必要的信息在tar文件之外建立索引。
答案 0 :(得分:0)
John Szakmeister在评论中回答了这个superuser.com问题,谢谢!
https://superuser.com/questions/655739/extract-single-file-from-huge-tgz-file/655802#655802
简短的回答:如果启用压缩,它会在tar存档中而不是每个文件中流式传输,因此答案是否定的。