PlistBuddy - 从一个 plist 复制到另一个

PlistBuddy - Copying from one plist to another

我正在尝试从一个 plist 文件复制根字典并将其添加到另一个 plist 文件

git clone https://github.com/rahulkatariya/osx-terminal.app-colors-solarized.git

mv osx-terminal.app-colors-solarized/Solarized\ Dark.terminal osx-terminal.app-colors-solarized/Solarized\ Dark.plist

solarizedDark=`/usr/libexec/PlistBuddy -c "Print" osx-terminal.app-colors-solarized/Solarized\ Dark.plist 2>&1`

/usr/libexec/PlistBuddy -c "Add :Window\ Settings:Solarized\ Dark dict $solarizedDark" ~/Library/Preferences/com.apple.Terminal.plist

错误

输出仍然在 Window 设置字典中创建了一个空的 Solarized Dark 字典,但有 0 个项目

这是我要复制的 plist

已解决

我添加了一个空字典,然后使用 PlistBuddy 的合并命令将文件的所有条目添加到新字典中,如下所示

/usr/libexec/PlistBuddy -c "Add ':Window Settings:Solarized Dark' dict" ~/Library/Preferences/com.apple.Terminal.plist
/usr/libexec/PlistBuddy -c "Merge 'osx-terminal.app-colors-solarized/Solarized Dark.plist' ':Window Settings:Solarized Dark'" ~/Library/Preferences/com.apple.Terminal.plist