如何对文件进行 gunzip 压缩并保留 .gz 文件?

如何对文件进行 gunzip 压缩并保留 .gz 文件?

gunzip 的默认行为是在解压缩后删除 .gz 文件。

我该如何防止它删除该文件?

如果不包含此功能,那么是否有其他程序可以实现此功能?

我正在使用 Ubuntu 9.04

答案1

您正在寻找:

gzcat x.txt.gz >x.txt

gzcat命令相当于gunzip -c简单地将输出流写入stdout。这将使压缩文件保持不变。因此,您还可以使用:

gunzip -c x.txt.gz >x.txt

请注意,在某些系统上,gzcat 也称为,因此zcat请像这样运行:

zcat x.txt.gz >x.txt

答案2

您可以使用-cgunzip 选项将输出写入 stdout,然后通过管道将其传输到您选择的文件:

gunzip -c compressed-file.gz > decompressed-file

更多详情手册页

答案3

一个更简单的解决方案是仅使用 gunzip 作为过滤器,如下所示:

gunzip < myfile.gz > myfile

答案4

如果它实际上是一个 tarball(.tgz 或 .tar.gz 扩展名),那么您不需要像迄今为止的所有答案那样重定向到文件,而是需要将其通过管道传输到 tar,如下所示:

gunzip -c myfile.tar.gz | tar xvf -

以便您获得实际内容。

相关内容