複数のファイルをカスタマイズして圧縮しますか?

複数のファイルをカスタマイズして圧縮しますか?

リリースの準備中に、私のアプリケーションのtarballを手動で書くのに問題があります。私のプロジェクト構造は次のとおりです。

project_root
     |
     |__resources
     |     |____config.conf
     |
   ....
     |__target
           |____release
                    |___bin
                         |___app.bin

だから愚かなように2つのファイルを圧縮する必要があります。

project_root/resource/config.conf         -->   ./app/config/example/config.conf
project_root/target/release/bin/app.bin   -->   ./app/app.bin

方法の良い例があります。複数ファイルの圧縮タールの場合相対パスしかし、単一ファイルの場合です。

上記のシナリオで2つのファイルをパッケージ化する方法はありますか?

ベストアンサー1

GNUを使用すると、tar2つのファイルを手動で含め、次のオプションを使用してパスを変更できます--transform

tar --transform=s,project_root/resources/,./app/config/example/, \
    --transform=s,project_root/target/release/bin/,./app/, \
    -cf my.tar \
    project_root/resources/config.conf \
    project_root/target/release/bin/app.bin

出力:

$ tar tf my.tar
./app/config/example/config.conf
./app/app.bin

おすすめ記事