osx - 作为 pkg 安装的一部分删除文件

osx - remove files as part of pkg installation

我使用 pkgbuild 为我的 OSX 应用程序创建了安装程序。有没有办法添加额外的安装步骤,这会删除一些文件? 在此特定示例中 - 当我 运行 我的应用程序时,它会在二进制文件所在的目录中创建新文件。安装新版本会替换二进制文件,但会保留之前创建的文件。安装新版本后我需要"fresh start"。

您可以将安装后脚本添加到您的包中并删除所有不再需要的文件。 创建一个 shell 脚本并将用于删除这些文件的代码放入其中。将该脚本命名为 postinstall(不带扩展名)并放在名为 script 的文件夹中。使用此命令创建您的包:

/usr/bin/pkgbuild \
    --root "$ROOT_LOCATION" \
    --install-location "$INSTALL_LOCATION" \
    --identifier "$IDENTIFIER" \
    --version "$VERSION" \
    --scripts "scripts" \
    "$NAME.pkg"

当安装程序运行安装后脚本时,它还会传递一些有用的信息,例如脚本所在的路径 运行 等等。您可以将这些信息作为输入参数 $1, $2, ...