给定一个 zip 文件zipfile.zip,我们知道它包含一个名为text.txt.
text.txt有没有办法在不解压的情况下读取内容zipfile.zip?
Edu*_*ani 13
例如,您可以将文件直接转储到标准输出。从技术上讲,您仍然在解压缩它,但不是解压缩到磁盘:
$ unzip -p zipfile.zip text.txt
Run Code Online (Sandbox Code Playgroud)
例如,要计算行数,您可以这样做:
$ unzip -p zipfile.zip text.txt | wc -l
Run Code Online (Sandbox Code Playgroud)
该-c选项类似,但会在内容之前写入每个提取文件的名称。
libarchivebsdtar支持多种存档格式,包括 infozip / pkzip 格式,因此您可以对所有这些格式使用相同的 CLI:
bsdtar xOf zipfile.zip text.txt
Run Code Online (Sandbox Code Playgroud)
转储标准输出上指定的存档成员的内容text.txt。添加q在第一个处停止的选项(实际上,存档中给定路径通常只有一个条目)。
tar您可以对、tgz、iso、ar、cpio、7z文件等执行相同的操作。