zstd -rフォルダ-o出力.zstのために単一のファイルから複数のファイルを分離する方法は?

zstd -rフォルダ-o出力.zstのために単一のファイルから複数のファイルを分離する方法は?

マニュアルを十分読んでいないので、次のコマンドを実行しました。

$ zstd -r folder -o output.zst

次のコマンドは、出力と呼ばれるファイルを提供します。

$ unzstd output.zst 

出力ファイルには、リンクされたフォルダ内のファイルの内容全体が含まれます。

単一のファイルを複数の生ファイルに分割できるツールやプログラムはありますか?

これは私がバックアップする必要がある唯一のバックアップファイルです。

編集:私が実際に実行する必要があるもの(このスレッド) はい

# for tar version 1.31 and above
$ tar --zstd -cf output.tar.zst folder

# for tar version < 1.31
$ tar --use-compress-program zstd -cf output.tar.zst folder

ベストアンサー1

この質問も投稿しました。zstd githubの問題私が学んだことは次のとおりです。ターコイズ 4973

すべての圧縮フレームは同じファイルoutput.zstにすぐに保存されます。

少なくとも理論的には、各フレームを分離して各ファイルの境界を見つける方法がありますが、もう1つの問題は、フレームのどれもファイル名やディレクトリツリーの場所を含まないということです。したがって、名前のないファイルがたくさん残ります。

正しいアーカイブ方法は、zstdをファイルメタデータの保存を担当するtarと組み合わせることです。

現在、フレームを分離できるツールやプログラムはありません。しかし、誰かがそれを使うことができますlz4frame.h

デフォルトでは、CLI はすべてのフレームを同じ解凍ファイルに連続して解凍します。

...直接プログラミングして、... ZSTD_decompressStream()APIを使用してください。

おすすめ記事