编辑器或在没有 Xcode 的情况下以干净的方式打印 plist 的方法
Posted
技术标签:
【中文标题】编辑器或在没有 Xcode 的情况下以干净的方式打印 plist 的方法【英文标题】:Editor or way to print plist in a clean way without Xcode 【发布时间】:2012-02-28 16:24:54 【问题描述】:我需要与不具备技术倾向的人分享来自 plist 的信息。是否有一个通用的 free 编辑器可以用来以类似于 Xcode 中呈现的方式查看 plist 信息?或者有没有办法打印出来?
换句话说,我想查看 plist 没有所有类似 xml 的标记,也没有使用 Xcode。
【问题讨论】:
【参考方案1】:命令行选项用于查看 Plist文件:
仅供查看:使用plutil -p
,以 JSON-like 格式打印属性列表的内容(该格式仅供人类使用) .
示例(附加 | open -tf
以在文本编辑器中查看输出):
plutil -p ~/Library/Preferences/com.apple.sidebarlists.plist
替代:使用/usr/libexec/PlistBuddy -c print
,它以 javascript-object-literal-like 格式输出:
例子:
/usr/libexec/PlistBuddy -c print ~/Library/Preferences/com.apple.airplay.plist
警告:
如果 plist 具有包含 二进制数据 的属性,PlistBuddy
将以原始形式包含它(相比之下,同一文件中的非二进制属性会正确打印)。如果需要 XML 输出,请添加选项 -x
。
注意PlistBuddy
:
:
-分隔、区分大小写的属性路径;例如,/usr/libexec/PlistBuddy -c 'print :favorites:ShowRemovable' ~/Library/Preferences/com.apple.sidebarlists.plist
还能够从命令行修改 Plist 文件(包括但有限制地从以前导出的 XML 文件导入)。
详情请见/usr/libexec/PlistBuddy -h
。
【讨论】:
【参考方案2】:自 Xcode 4 以来,独立的“属性列表编辑器”已消失,您可以使用免费的 Pref Setter,但最近一次更新是 4 年前。
要保存不带 xml 标记的内容,请参见以下示例:
NSDictionary *dict = [NSDictionary dictionaryWithContentsOfFile:[@"~/Library/Preferences/loginwindow.plist" stringByExpandingTildeInPath]];
[[dict description] writeToURL:[NSURL fileURLWithPath:[@"~/Desktop/loginwindow.txt" stringByExpandingTildeInPath]] atomically:YES encoding:NSUTF8StringEncoding error:nil];
【讨论】:
【参考方案3】:您可以使用visual studio code
打开和编辑 Plist 文件。
只需在Visual Studio代码中安装一个扩展名为Binary Plist
:
二进制列表
出版商:大卫·尼科尔森
市场链接:https://marketplace.visualstudio.com/items?itemName=dnicolson.binary-plist
【讨论】:
【参考方案4】:如果您不想为此使用臃肿的 XCode 4,有一种方法可以获取旧的 Property List Editor working on Mac OS X Lion。
【讨论】:
【参考方案5】:作为 OS X 的一部分,有一个“属性列表编辑器”应用程序(或者曾经有,我现在不在我的机器上,所以无法检查)。
否则,您可以在大约半小时内写一篇!
【讨论】:
以上是关于编辑器或在没有 Xcode 的情况下以干净的方式打印 plist 的方法的主要内容,如果未能解决你的问题,请参考以下文章