5

在 Xcode 中,我如何调用一个“shell 脚本”,它是一个将文件复制到不同目录的 Perl.app脚本.dsym

我想将项目的名称和/或项目的根目录传递给脚本。我希望每次在发布和分发模式下而不是在调试模式下构建时都调用脚本。

4

3 回答 3

9

对于其他想知道的人,您也可以通过以下方式进行简单的复制

[单击方案名称] -> 编辑方案... -> [选择方案] -> 运行“目标” -> 后操作

并添加一个 cp 命令。就我而言,为了快速测试和易用性,我想将我的二进制文件复制回项目目录,以便处理一些数据文件。我使用了以下内容:

cp ${TARGET_BUILD_DIR}/${TARGET_NAME} ${PROJECT_DIR}/"binaryFileName"
于 2013-08-20T20:12:23.457 回答
5

右键单击您的目标并选择 Add->New Build Phase->New Run Script Build Phase。

在“脚本”文本区域内,添加:

if [ ${CONFIGURATION} != "Debug" ]
then
    /usr/bin/perl "${PROJECT_DIR}/myperlscript.pl" "${PRODUCT_NAME}" "${PROJECT_DIR}"
fi

将位置和名称更改为myperlscript.pl脚本的位置和名称。

确保将Run Script步骤移至 after Link Binary With Libraries,因为您正在复制构建的 .app。

(可能还想在问题中添加“perl”标签)

于 2009-08-26T00:16:36.743 回答
2

Xcode 12.4 没有脚本,而是有一个用于复制文件的构建阶段:

  1. 显示项目导航器(蓝色文件夹按钮)
  2. 单击您的项目(蓝图图标)
  3. 在打开的设置窗格中单击“构建阶段”标题
  4. 单击设置窗格左上角的 +
  5. 单击“新建复制文件阶段”
  6. 将目标更改为绝对路径并设置您的路径
  7. 单击底部的 + 以添加要复制的文件
  8. 保存。如果您在未保存的情况下运行,您的新阶段将被忽略

如果您不想要绝对路径或提供的目的地之一,则必须改用运行脚本阶段。

于 2021-02-18T19:47:20.667 回答