Macos 在BASH中,如何在plist上为数组中的现有元素使用默认值write?
我想使用命令行工具更改以下plist中的Macos 在BASH中,如何在plist上为数组中的现有元素使用默认值write?,macos,bash,plist,Macos,Bash,Plist,我想使用命令行工具更改以下plist中的DEFAULT\u value\u PLACEHOLDER的值 我不认为有任何方法可以用默认值来实现这一点(这并不完全难看)——你最好用PlistBuddy来做这样的事情: /usr/libexec/PlistBuddy -c "set :PreferenceSpecifiers:0:DefaultValue '$NEW_DEFAULT_VALUE'" "$PLIST_PATH" 请注意,与默认值不同,PlistBuddy希望您给它的文件名包含“.pli
DEFAULT\u value\u PLACEHOLDER
的值
我不认为有任何方法可以用
默认值来实现这一点(这并不完全难看)——你最好用PlistBuddy来做这样的事情:
/usr/libexec/PlistBuddy -c "set :PreferenceSpecifiers:0:DefaultValue '$NEW_DEFAULT_VALUE'" "$PLIST_PATH"
请注意,与默认值不同,PlistBuddy希望您给它的文件名包含“.plist”;另外,(如上所示),数组索引从0开始。使用objective-c/cocoa?不,对不起,应该说清楚,BASH用于CI服务器,而不是objective-c。我来编辑这个问题。
defaults write $PLIST_PATH 'PreferenceSpecifiers { 1 = { DefaultValue = $NEW_DETAULT_VALUE; }; }'
/usr/libexec/PlistBuddy -c "set :PreferenceSpecifiers:0:DefaultValue '$NEW_DEFAULT_VALUE'" "$PLIST_PATH"