如何在Ubuntu上看到漂亮的大型JSON文件?

时间:2012-05-22 14:32:32

标签: json ubuntu syntax-highlighting pretty-print

我想听听您关于如何在Ubuntu上处理大型(40MB)JSON文件的建议。我希望在 vim gedit 或任何其他编辑器中看到它。人们可以找到关于如何prettify the JSON的数学教程,但是,他们不必处理大量输入。我还想象我可以通过pygments或任何其他语法高亮显示管道传输数据。我很想听听你的想法。

示例下载:

wget -O large-dataset.json http://data.wien.gv.at/daten/wfs?service=WFS&request=GetFeature&version=1.1.0&typeName=ogdwien:BAUMOGD&srsName=EPSG:4326&outputFormat=json

请注意下载大小!


编辑:我发现meld正在发挥作用。应用程序不会立即加载整个文件,这会阻止用户界面。相反,它会按顺序读取文件内容。

7 个答案:

答案 0 :(得分:34)

Python JSON的模块也可以这样做(python -m json.tool),例如:

cat myjsonfile.json | python -m json.tool > pretty.json

答案 1 :(得分:4)

你有KDE或任何其他视觉环境吗?如果是,您是否尝试过使用Chrome扩展程序JSONView

答案 2 :(得分:3)

如果您只想可视化json文件,Firefox做得很好。我手头没有40MB文件,但使用9MB文件却做得很好。

只需将JSON文件拖到Firefox或运行:

firefox your_file.json

答案 3 :(得分:2)

核心用法是格式化大json。我用25MB json文件测试了Chrome扩展JSON View。它在将此加载为本地文件或从网络崩溃时崩溃。崩溃,我的意思是JSON不会被格式化,在查看JSON视图选项时,您将收到崩溃消息。我也为firefox尝试过类似的插件。我也尝试过在线json格式化程序。

找到这个图书馆 - jsonpps。非常适合从命令行格式化大型json,获取输入并将格式化的json保存为单独的文件。它也可以保存在同一个文件中(需要可选参数)

一个缺点是,要安装和运行,一个人应该熟悉Java和Maven。

安装&运行:

git clone https://github.com/bazaarvoice/jsonpps.git
mvn clean package
cd target 
java -jar jsonpps-1.2-SNAPSHOT.jar -o /path/to/output.json /path/to/largeInput.json

此解决方案不仅限于Ubuntu。它应该适用于任何操作系统。

答案 4 :(得分:1)

答案 5 :(得分:1)

我通常为此目的使用Sublime Text。有一个专门的插件可以完成这项工作。

插件Pretty JSON解析所选的JSON内容,并以结构化方式进行打印。

您需要做的就是选择内容,然后按 Ctrl + Alt + j

答案 6 :(得分:1)

jq是轻量级的命令行JSON处理器,效果很好! 为此,您需要使用以下命令安装jq(如果使用的是apt软件包管理器)。

sudo apt-get install jq

下面的命令会将json转换为新文件。

 jq '.' non-pretty.json > pretty.json

我们也可以使用jq过滤json,我发现它在处理较大的geojson文件时非常有用,例如,以下命令将仅保存第一个要素的属性。

jq '.features[0].properties' geojson_file.json > pretty.json

希望这会有所帮助!