我试图用Mac终端上的shell命令来替换一个字符串来修改Xcode项目的project.pbxproj
文件。我想换个场地-sed
到PRODUCT_BUNDLE_IDENTIFIER = com.example.71b9b4f2
使用的命令-PRODUCT_BUNDLE_IDENTIFIER = com.example.14a32d1e
会产生以下输出错误-
sed:1:“project.pbxproj”:p命令末尾的额外字符
我之前使用sed -i 's/com.example.71b94f2/com.example.14a32d1e/g' project.pbxproj
shell命令修改Plistbuddy
中的字段CFBUNDLEIDENTIFIER
,但在Xcode 7构建设置中这不再改变info.plist
。
我的主要目的是使用命令行或任何脚本修改Xcode中生成设置的PRODUCT_BUNDLE_IDENTIFIER字段。
最佳答案
OSX要求显式指定扩展名。解决方法是设置空字符串:
sed -i '' 's/com.example.71b94f2/com.example.14a32d1e/g' project.pbxproj