
リリースの準備中に、私のアプリケーションの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を使用すると、tar
2つのファイルを手動で含め、次のオプションを使用してパスを変更できます--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