tar.gzアーカイブ内のファイルを追加/更新する方法はありますか?基本的に、/data/data/com.myapp.backup/./files/settings.txt
にファイルを含むアーカイブがあります。 そのファイルをアーカイブからプルして(すでに実行済み)、編集が完了したらアーカイブにプッシュし直したいと思います。どうすればこれを達成できますか? .
のせいで問題がありますか? パスに?
承認された回答:
tarファイル形式は、いくつかのヘッダーと連結された一連のファイルです。分解して中身を入れ、元に戻すのはそれほど複雑な作業ではありません。そうは言っても、Janderは、プログラムとしてのtarにはこれを行うためのユーティリティ関数がなく、変更を加える前と後の両方で圧縮に追加の問題があることを説明しました。
しかし、その仕事のためのツールがあります!少なくとも2つのシステムがあり、圧縮されたtarアーカイブをフォルダーにループバックマウントしてから、ファイルシステムに変更を加えることができます。完了したら、フォルダのマウントを解除すると、圧縮されたアーカイブをロールする準備が整います。
最初のオプションの1つは、FUSEのarchivemountプロジェクトです。これがそのチュートリアルです。システムにはおそらくすでにFUSEがあり、そうでない場合は、ディストリビューションにFUSEのオプションが必要です。
他のオプションはtarfsです。使い方は簡単ですが、bzip2アーカイブの破損に問題があると聞いているので、最初にかなり徹底的にテストすることをお勧めします。