2016-07-22 8 views
0

私は、サイズがそれぞれ4G+の1000+ *.tar.gzのファイルを持っています。しかし、私が必要としたのは、各ファイルの上位5行だけです。私は、プロセスを圧縮解除せずにこれらの行を読み込む速い方法があるかどうか疑問に思っています(1つのファイルを解凍するのに3〜5分かかります)。 私のプラットフォームはLinuxです。解凍せずにtar.gzのトップラインを読む方法はありますか?

+0

部分圧縮解除可能ですか?(http://stackoverflow.com/questions/23676116/is-partial-gz-decompression-possible) – 123

+0

私はあなたが 'split -b X'を使ってファイルの最初のXバイトだけを取り出し、圧縮解除します –

答えて

1

いいえ、高速はありません。

ファイルは、.tarというファイルが連結された元のファイルのストリーム(いくつかのメタ情報付き)であるという問題があります。 gzipは完全アーカイブの圧縮を追加します。したがって、ファイルのリストを取得するだけでも、アーカイブは最初に解凍する必要があります。

関連する問題