2009-09-23 14:45:19 +0000 2009-09-23 14:45:19 +0000
228
228

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

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

如何防止它删除文件?

如果没有这个功能,有没有其他的程序可以这样做?

我使用的是Ubuntu 9.04

答案 (6)

56
56
56
2009-09-23 14:50:43 +0000

你可以使用gunzip的-c选项,它可以将输出写入stdout,然后将其管到你选择的文件中:

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

更多详情请参见手册页

33
33
33
2009-09-23 17:30:23 +0000

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

gunzip < myfile.gz > myfile
12
12
12
2009-09-23 15:22:00 +0000

如果它实际上是一个tarball (.tgz或.tar.gz扩展名),那么你就不要像目前所有的答案那样重定向到文件中,而是要把它管成tar,比如:

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

,这样你就可以得到实际的内容。

5
5
5
2017-11-05 12:55:19 +0000
gzip -dk myfile.gz

OR

gunzip -k myfile.gz
> -k --keep Keep (don't delete) input files during compression or decompression.
> ``` 

评语: 

> &001
5
5
5
2009-09-23 14:52:40 +0000

使用-c选项将文件解压为stdout。它不会触动原始文件。

gunzip -c myfile.gz > myfile
2
2
2
2010-01-31 16:14:03 +0000

Gnu tar可以读取gzip文件:tar -zxsvf myfile.tar.gztar -jxzvf myfile.tar.bz2为bzipped tar文件。