我可以使用 python 的 tar 文件包将快速查找索引存储到 tar 文件吗?
Can I store a fast-lookup index to a tar file using python's tarfile package?
我有一个很大的 tar 存档并且正在使用 python (3.6+) 和 tarfile
包。
如果我使用 tar_info = tarfile.getmember(filename)
然后我可以调用 tarfile.extract(tar_info)
,但是对 extract
的调用很慢,似乎是在扫描文件,在大型存档上花费了很多分钟。
我看到 tar_info
对象中有一个偏移量,所以这似乎应该是一个快速的查找和读取操作。
我想知道是否有一种方法可以将索引存储到 tar 文件中,以便 它是 快速查找和读取操作以提取任何特定的文件,因为我在 tar 文件之外索引了必要的信息。
John Szakmeister 在评论中回答了这个 superuser.com 问题,谢谢!
https://superuser.com/questions/655739/extract-single-file-from-huge-tgz-file/655802#655802
简短回答:如果您启用压缩,它会在 tar 存档中流式传输,而不是每个文件,所以答案是否定的。
我有一个很大的 tar 存档并且正在使用 python (3.6+) 和 tarfile
包。
如果我使用 tar_info = tarfile.getmember(filename)
然后我可以调用 tarfile.extract(tar_info)
,但是对 extract
的调用很慢,似乎是在扫描文件,在大型存档上花费了很多分钟。
我看到 tar_info
对象中有一个偏移量,所以这似乎应该是一个快速的查找和读取操作。
我想知道是否有一种方法可以将索引存储到 tar 文件中,以便 它是 快速查找和读取操作以提取任何特定的文件,因为我在 tar 文件之外索引了必要的信息。
John Szakmeister 在评论中回答了这个 superuser.com 问题,谢谢!
https://superuser.com/questions/655739/extract-single-file-from-huge-tgz-file/655802#655802
简短回答:如果您启用压缩,它会在 tar 存档中流式传输,而不是每个文件,所以答案是否定的。