【问题标题】:Modify PRODUCT_BUNDLE_IDENTIFIER in project.pbxproj of Xcode修改 Xcode 的 project.pbxproj 中的 PRODUCT_BUNDLE_IDENTIFIER
【发布时间】:2015-10-02 15:14:51
【问题描述】:

我正在尝试使用 Mac 终端上的 sed shell 命令来修改 Xcode 项目的 project.pbxproj 文件以替换字符串。我要替换字段 -

PRODUCT_BUNDLE_IDENTIFIER = com.example.71b9b4f2

PRODUCT_BUNDLE_IDENTIFIER = com.example.14a32d1e

使用的命令 -

sed -i 's/com.example.71b94f2/com.example.14a32d1e/g' project.pbxproj

产生以下输出错误-

sed: 1: "project.pbxproj": p 命令末尾的多余字符

我之前使用Plistbuddy shell 命令来修改info.plist 中的字段CFBUNDLEIDENTIFIER,但这不会再更改Xcode 7 构建设置中的$(PRODUCT_BUNDLE_IDENTIFIER)

我的主要目标是使用命令行或任何脚本修改 Xcode 中 BUILD SETTINGS 的 PRODUCT_BUNDLE_IDENTIFIER 字段。

【问题讨论】:

    标签: bash unix sed xcode7 plist


    【解决方案1】:

    OSX 要求明确指定扩展。解决方法是设置一个空字符串:

    sed -i '' 's/com.example.71b94f2/com.example.14a32d1e/g' project.pbxproj
    

    【讨论】:

    • 是的。试过了,在这种情况下不起作用。已经找到这个here
    • 这很奇怪,因为我刚刚尝试过,它适用于我的 macbook pro
    • 你介意使用python脚本吗?我可以为你写python脚本
    • 使用mod-pbxproj 找到了替代解决方案。将分享有关如何使用它以及其他人的详细答案。
    猜你喜欢
    • 2012-10-01
    • 2019-06-27
    • 1970-01-01
    • 1970-01-01
    • 2019-05-12
    • 2012-02-17
    • 2015-10-11
    • 2010-10-31
    • 2018-03-01
    相关资源
    最近更新 更多