Compression 无需解压缩即可删除.gz文件元数据

Compression 无需解压缩即可删除.gz文件元数据,compression,gzip,zipfile,Compression,Gzip,Zipfile,我想从.gz文件(以及zero-MTIME和FLG)中删除元数据,就像该文件是由gzip-n创建的一样 (if FLG.FEXTRA set) +---+---+=================================+ | XLEN |...XLEN bytes of "extra field"...| (more-->) +---+---+=================================+ (if FLG.FNAME set) +==========

我想从.gz文件(以及zero-MTIME和FLG)中删除元数据,就像该文件是由
gzip-n
创建的一样

(if FLG.FEXTRA set)

+---+---+=================================+
| XLEN  |...XLEN bytes of "extra field"...| (more-->)
+---+---+=================================+

(if FLG.FNAME set)

+=========================================+
|...original file name, zero-terminated...| (more-->)
+=========================================+

(if FLG.FCOMMENT set)

+===================================+
|...file comment, zero-terminated...| (more-->)
+===================================+

(if FLG.FHCRC set)

+---+---+
| CRC16 |
+---+---+

但我不想先把它咕噜咕噜,然后再咕噜咕噜。如何读取头并丢弃它,然后将其余部分写入新文件?

如果头位于文件末尾。。。大概但一般来说,如果不重写文件的某个部分,即使是未压缩的文件,也无法删除该部分。您可以执行
zgrep-Pv'exclude regex'file | gzip>file.new
。如果删除Inplace的要求,Inplace我没有任何技巧可以对付@mob。如何读取标题并将其剥离?@toolic我不是在寻求建议。我在寻求解决办法。请打开邮局。@Ed Morton我不是要推荐人。我在寻求解决办法。请打开邮局。