2010-03-01 32 views
2

我想修改一个子项的plist文件(即“TB项目标识符”):修改子项中*的plist文件

NSNavPanelExpandedStateForSaveMode = 1; 
NSPreferencesContentSize = "{508, 413}"; 
NSPreferencesSelectedIndex = 6; 
"NSToolbar Configuration BrowserWindowToolbarIdentifier" =  { 
    "TB Display Mode" = 2; 
    "TB Icon Size Mode" = 1; 
    "TB Is Shown" = 1; 
    "TB Item Identifiers" =   (
     BackForwardToolbarIdentifier, 
     HomeToolbarIdentifier, 
     InputFieldsToolbarIdentifier 
    ); 
    "TB Size Mode" = 1; 
    "TB Visibility Priority Values" =   { 
     BackForwardToolbarIdentifier =    (
      999 
     ); 
     InputFieldsToolbarIdentifier =    (
      1000 
     ); 
    }; 
}; 

我在shell脚本中使用以下命令:

defaults write com.apple.file key keyvalue 

所以我要改变“TB项目标识符”每一次,我改变了整个“NSToolbar配置BrowserWindowToolbarIdentifier”。如何直接修改plist子键或子子键?

回答

3
defaults write com.yourcompany.app key -dict-add subkey plistValue 
2

使用PlistBuddy

在/ usr/libexec目录/ PlistBuddy -c “SET键:SubKey1:SubKey2:Subkey3值” ./Path/To/Your.plist

+0

这看起来像一个良好系统管理员工具也是如此。我正在寻找一种方法来在MacOS X 10.7,a.k.a. Lion中关闭appstoreupdateagent的脚本。 – 2012-06-21 00:51:24

+0

但是,PlistBuddy用于plists,而defaults命令用于默认数据库。这是一个实现细节,默认值作为plists在磁盘上缓存。不保证(与内存中的内容不一样) – uchuugaka 2015-08-31 05:19:49

相关问题