不能,因为Gzip不是存档格式。
这本身就是一个有点垃圾的解释,所以让我把它分解得比我在评论中做的更多一些。。。
只是压缩
“仅仅是一个压缩系统”意味着Gzip对输入字节(通常来自文件)进行操作并输出压缩字节。你不知道里面的字节是代表多个文件还是仅仅代表一个文件——它是一个被压缩的字节流。例如,这就是为什么可以通过网络接受gzip数据的原因。它的字节输入->;字节输出。
什么是舱单?
清单是存档中用作存档内容表的头。注意,现在我使用的术语是“存档”而不是“压缩字节流”。存档意味着它是由清单引用的文件或段的集合——压缩字节流就是字节流。
Gzip里面到底是什么?
.gz文件内容的一个简化描述是:一个带有特殊数字的头,表示它的gzip、版本和时间戳(10字节)
可选的头;通常包括原始文件名(如果压缩目标是文件)
尸体——一些压缩的有效载荷
结尾的CRC-32校验和(8字节)
就这样。没有清单。
另一方面,存档格式将包含一个清单。那是焦油库的入口。Tar只是一种将一堆位放在一个文件中,并在前面放置一个清单的方法,它可以让您知道原始文件的名称以及它们在连接到存档之前的大小。因此,.tar.gz非常普遍。
有一些实用程序允许您一次解压缩gzip文件的部分内容,或者只在内存中解压缩它,然后让您检查清单或其中的任何内容。但是任何清单的细节都是特定于其中包含的存档格式的。
请注意,这与zip存档不同。Zip是一种归档格式,因此包含一个清单。Gzip是一个压缩库,就像bzip2和friends一样。