4

インストール時に元の*.pkgファイルディレクトリを取得するにはどうすればよいですか?

pkgファイルを作成し、別のファイル(などtest.txt)と一緒に〜/ Desktop/testなどの同じフォルダーに配置しました

また、pkgファイルをインストールするときに、「test.txt」ファイルを〜/Libraryフォルダーにコピーする必要があります。そこで、プレインストール/ポストインストールスクリプトをpkgファイルに追加して、「test.txt」ファイルをコピーします。ディレクトリを使用してみます

DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"

ただし、tmpディレクトリが返されます

/private/tmp/PKInstallSandbox.G5GFI6/Scripts/com.myApp.testApp.pkg.o5k2nE

元のpkgディレクトリではありません(~/Desktop/test)

インストール時に元のディレクトリを取得する方法を知っている人はいますか?

4

3 に答える 3

12

フラットパッケージを作成しましたか? postinstall スクリプトに渡されたパラメーターを調べてみましたか?

$0 - Script path
$1 - Package path
$2 - Target location
$3 - Target volume`

パラメータ $1 は、探しているものを提供するはずです。

古いバンドル スタイルの形式情報からコピーされましたが、新しいフラット パッケージにも適用されるようです。

于 2012-07-24T17:34:16.650 に答える
3

このMac インストーラー ブログには、Packagemaker に関する有用な投稿がいくつかあります。これには、使用法や一般的な問題の解決策に関する詳細が含まれています。

于 2012-08-14T06:40:14.047 に答える
2

これ:

pkgpath=\`dirname "$PACKAGE_PATH"\`

は、変数内のパッケージへのパスを提供します$pkgpath

于 2014-05-16T17:07:24.683 に答える