動的圧縮/圧縮解除のためのツール/ライブラリ

動的圧縮/圧縮解除のためのツール/ライブラリ

動的圧縮と解凍を可能にするライブラリまたはLinuxコマンドラインツールを探しています。 「即時」とは、次のshスクリプトで使用できることを意味します。

> while:; do; echo "foobar"; sleep 1; done; | <tool to compress> > file &
> sleep 4
> <tool to decompress> file 
foobar
foobar
foobar
foobar

私が理解している限りgzip、zlibはここでは機能しません。私の「テスト」は次のような出力を生成します。

> while:; do; echo "foobar"; sleep 1; done; | gzip > file &
> sleep 4
> zcat file 
gzip: file: unexpected end of file

オプションはありますか?

ベストアンサー1

gzip動作しますが(私のテストでは)16KiB圧縮チャンクだけを書き、入力が圧縮されたため本物まあ、そこに行くには少し時間がかかります。走れば

while :; do echo "foobar"; sleep 1; done | gzip > file &

しばらく待ってから最初の部分だけを削除すると、効果的な圧縮が行われますfile

何も殺さずにテストするには、以下を削除しますsleep

yes foobar | gzip > file &

数秒後にfile16KiBに増加することがわかります。

おすすめ記事