如何在不解压缩的情况下查看.tar.gz档案中特定文件的内容?
比如说,有一个叫做 abc.tar.gz 的压缩文件,里面包含了以下文件:
abc/file1.txt
abc/file2.txt
abc/abc1/file3.txt
abc/abc2/file4.txt
我想要读取并显示 file3.txt 的内容,但不想把文件解压出来。
谢谢大家的帮助。
2 个回答
5
在编程中,有时候我们会遇到一些问题,特别是在使用某些工具或库的时候。比如,有人可能在使用一个叫做“库”的东西时,发现它的某些功能没有按照预期工作。这种情况可能会让人感到困惑,因为我们可能不知道问题出在哪里。
通常,解决这类问题的第一步是仔细检查代码,看看是否有拼写错误或者使用不当的地方。很多时候,问题可能就出在这些小细节上。
另外,查看相关的文档也是个好主意。文档就像是使用说明书,里面会告诉你如何正确使用这个库,或者它的某些功能是如何工作的。
如果自己解决不了,还可以去一些编程社区,比如StackOverflow,向其他人求助。在那里,你可以把你的问题描述清楚,看看有没有人遇到过类似的情况,或者有没有人能给你一些建议。
总之,遇到问题时不要着急,慢慢分析,查阅资料,必要时寻求帮助,通常都能找到解决办法。
tar -xzf mytar.tar.gz --to-command=cat filename.in.archive
11
import tarfile
spam = tarfile.open( "abc.tar.gz" )
if "abc/abc1/file3.txt" in spam.getnames():
with spam.extractfile( "abc/abc1/file3.txt" ) as ham:
print ham.read()
查看 tarfile 这个文档。