0
私は、サイズがそれぞれ4G+
の1000+ *.tar.gz
のファイルを持っています。しかし、私が必要としたのは、各ファイルの上位5行だけです。私は、プロセスを圧縮解除せずにこれらの行を読み込む速い方法があるかどうか疑問に思っています(1つのファイルを解凍するのに3〜5分かかります)。 私のプラットフォームはLinuxです。解凍せずにtar.gzのトップラインを読む方法はありますか?
私は、サイズがそれぞれ4G+
の1000+ *.tar.gz
のファイルを持っています。しかし、私が必要としたのは、各ファイルの上位5行だけです。私は、プロセスを圧縮解除せずにこれらの行を読み込む速い方法があるかどうか疑問に思っています(1つのファイルを解凍するのに3〜5分かかります)。 私のプラットフォームはLinuxです。解凍せずにtar.gzのトップラインを読む方法はありますか?
いいえ、高速はありません。
ファイルは、.tar
というファイルが連結された元のファイルのストリーム(いくつかのメタ情報付き)であるという問題があります。 gzip
は完全アーカイブの圧縮を追加します。したがって、ファイルのリストを取得するだけでも、アーカイブは最初に解凍する必要があります。
部分圧縮解除可能ですか?(http://stackoverflow.com/questions/23676116/is-partial-gz-decompression-possible) – 123
私はあなたが 'split -b X'を使ってファイルの最初のXバイトだけを取り出し、圧縮解除します –