250GBの大容量プレーンテキストファイルを作成するための変更できないアプリケーションがあります。 GZで圧縮すると30GBしか残りません。
アプリケーションには出力を圧縮するオプションはなく、ファイル名のみを書き込むことができます(標準出力ではありません)。
まず、250GBファイルをディスクに保存せずに出力の即時圧縮を設定する方法はありますか?
また、アプリケーションが実際に圧縮されたプレーンテキストファイルを読み取るように欺く反対のアプローチも必要です。
ベストアンサー1
ファイル名としてを使用/dev/stdout
し、アプリケーションの出力をgzip
。
/dev/stdout
へのシンボリックリンクです/proc/self/fd/1
。
同様に、これをファイル名として使用/dev/stdin
し、出力をgzip
アプリケーションにパイプすることができます。
私は言った可能これは、アプリケーションが検索可能であるが/dev/std{in,out}
検索できないファイルを書き込んだり読み取ったりする必要があるためです。このような場合は、迷子になることがあります。検索可能なファイルをアプリケーションのターゲットとして使用する必要があります。