如何在不解压缩的情况下查看.tar.gz档案中特定文件的内容?

6 投票
2 回答
5275 浏览
提问于 2025-04-16 02:03

比如说,有一个叫做 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 这个文档。

撰写回答