是否可以用于gzip
解压缩 gzip 压缩文件,无需 gz 扩展名,并且无需移动文件?
答案1
您可以传递-S
选项以使用 . 以外的后缀.gz
。
gunzip -S .compressed file.compressed
如果您希望未压缩的文件具有其他名称,请运行
gzip -dc <compressed-file >uncompressed-file
gunzip <compressed-file >uncompressed-file
(这些命令是等效的)。
通常解压缩会恢复原始文件的名称和日期(压缩时);这不会发生在-c
.
如果想让压缩文件和未压缩文件同名,就不能直接这样做,需要要么重命名压缩文件,要么重命名未压缩文件。特别是,gzip
删除并重新创建其目标文件,因此如果您因为在目录中没有写权限而需要就地修改文件,则需要使用-c
或重定向。
cp somefile /tmp
gunzip </tmp/somefile >|somefile
请注意,这gunzip <somefile >somefile
不起作用,因为该gunzip
进程在开始读取时会看到文件被截断为 0 字节。如果你可以调用截断,那么gunzip
就会反馈它自己的输出;不管怎样,这件事都做不到位。
答案2
你可以,做类似的事情:
gzip -d - < gzippedfilewithnoextention > ungzippedfile
现在你不能这样做并解压缩到相同的文件名。之后您需要重命名未压缩的文件(即您不能以这种方式就地解压缩)。