默认写入可以超过一个键深度吗?

问题描述 投票:0回答:1

我想创建一个默认写入命令,深度为 2 层,但在网上找不到任何内容。

我使用 -dict 开关得到的最接近的深度是 1 级。

我想编写我的OC更新脚本,所以很多人可能会使用这个方法,如果我能让它工作,它会比将整个文件换入换出要好得多。

例如; 默认写入 ~/Desktop/config Kernel -dict Emulate -dict Cpuid1Mask -data AAAAAAAAAAAAACAAAAAAA==

-dict 的第二次使用不起作用,但这就是我正在尝试的......

我已经尝试了几乎所有我能想到的方法,但无法获得正确的语法。

也许默认写入无法处理它,但我想使用默认写入命令来执行此操作,而不必安装另一个命令行工具。

我希望能够更改这些值;

<plist version="1.0">
<dict>
    <key>Kernel</key>
    <dict>
        <key>Emulate</key>
        <dict>
            <key>Cpuid1Mask</key>
            <data>
            AAAAAAAAAAAAAAAAAAAAAA==
            </data>
        </dict>
    </dict>
    <key>PlatformInfo</key>
    <dict>
        <key>UpdateSMBIOS</key>
        <true/>
    </dict>
</dict>
</plist>
macos terminal plist default opencore
1个回答
0
投票

如果您将所有内容编码为 plist 格式,您可以执行以下操作:

defaults write ~/Desktop/config '<dict><key>Kernel</key><dict><key>Emulate</key><dict><key>Cpuid1Mask</key><data>AAAAAAAAAAAAAACAAAAAAA==</data></dict></dict><key>PlatformInfo</key><dict><key>UpdateSMBIOS</key><true/></dict></dict>'

如果你想很好地格式化plist:

defaults write ~/Desktop/config '<dict>
  <key>Kernel</key>
  <dict>
    <key>Emulate</key>
    <dict>
      <key>Cpuid1Mask</key>
      <data>AAAAAAAAAAAAAACAAAAAAA==</data>
    </dict>
  </dict>
  <key>PlatformInfo</key>
  <dict>
    <key>UpdateSMBIOS</key>
    <true/>
  </dict>
</dict>'

如果您只是想写

Kernel
字典:

defaults write ~/Desktop/config Kernel '<dict><key>Emulate</key><dict><key>Cpuid1Mask</key><data>AAAAAAAAAAAAAACAAAAAAA==</data></dict></dict>'

如果你想很好地格式化plist:

defaults write ~/Desktop/config Kernel '<dict>
    <key>Emulate</key>
    <dict>
        <key>Cpuid1Mask</key>
        <data>AAAAAAAAAAAAAACAAAAAAA==</data>
    </dict>
</dict>'
© www.soinside.com 2019 - 2024. All rights reserved.