如何使用AppleScript删除plist键

时间:2014-03-07 08:33:01

标签: ios iphone objective-c macos applescript

我有plist文件,如下所示:

<dict>
    <key>CFBundleURLTypes</key>
    <array>
        <dict>
            <key>CFBundleURLName</key>
            <string></string>
            <key>CFBundleURLSchemes</key>
            <array>
                <string></string>
            </array>
        </dict>
    </array>
    <key>CFBundleLocalizations</key>
    <array>
        <string>en</string>
    </array>
</dict>

我想删除CFBundleURLName标记内的词典标记。我想删除string代码中的所有CFBundleLocalizations代码。

如何使用AppleScript执行此操作?

2 个答案:

答案 0 :(得分:1)

这允许您从plist中删除键:

set aScript to "defaults delete /path/to/your/com.dsah.plist keyname"
do shell script aScript with administrator privileges

您必须先将plist写入文件。要删除所有CFBundleLocalizations字符串,您应该删除CFBundleLocalizations键,然后添加一个空字符串。

答案 1 :(得分:1)

我刚刚经历了同样的情况,发现了这两个苹果线程的讨论。根据讨论,没有命令可以直接删除plist密钥对象。

https://discussions.apple.com/message/12578430#12578430

https://discussions.apple.com/thread/771027?tstart=0

您可以使用shell脚本实现此目的。