我想使用命令行更改plist文件中的“bundle-identifier”字符串值。使用'defaults',我该怎么做?
仅供参考,这里是plist的完整部分:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>items</key>
<array>
<dict>
<key>assets</key>
<array>
<dict>
<key>kind</key>
<string>software-package</string>
<key>url</key>
<string>http://eventpilotadmin.com/doc/clients/ISES/Eventworld2011/proofs/iphone_Eventworld2011_proof.ipa</string>
</dict>
</array>
<key>metadata</key>
<dict>
<key>bundle-identifier</key>
<string>com.ativsoftware.Eventworld2011</string>
<key>bundle-version</key>
<string>1.0</string>
<key>kind</key>
<string>software</string>
<key>title</key>
<string>Eventworld2011</string>
</dict>
</dict>
</array>
</dict>
</plist>发布于 2011-08-13 04:52:02
试试这个:
/usr/libexec/PlistBuddy -c "Set :items:0:metadata:bundle-identifier newidentifier" your.plist发布于 2011-08-13 02:57:10
如果行的格式是一致的,你可以用sed这样做:
sed -n '/bundle-identifier/{p;n;s/>.*</>new value</;};p' your.plist在您的示例中,这会将com.ativsoftware.Eventworld2011更改为new value
添加要就地编辑的-i。
发布于 2013-12-31 03:00:14
@user478681的答案对我不起作用,因为缺少解压缩和压缩ipa文件的步骤。
我找到了一个有这些步骤的site。
简而言之:
unzip app.ipa
/usr/libexec/PlistBuddy -c "Set :CFBundleIdentifier newidentifier" Payload/MyApp.app/Info.plist
zip -qr ResignedApp.ipa Payload如果您需要退出您的应用程序,请按照上述网站上的说明进行操作。
https://stackoverflow.com/questions/7044767
复制相似问题