如何在不打开的情况下将巨大的单行 json 文件转换为多行文件?

Ach*_*age 4 bash ubuntu json

我有一个大的(大约 200Mb)单行 json 文件,我想将其转换为更易读的多行​​ json(或 txt)文件。

我尝试使用文本编辑器(如 sublime text)打开文件,但打开需要很长时间。所以,我想在不打开文件的情况下进行转换。

因此,我无法使用SO 问题中建议的接口。

我通过执行以下操作尝试pretty-print按照答案中的建议使用 json 文件。

cat myjsonfile.json | python -m json.tool > pretty.json
Run Code Online (Sandbox Code Playgroud)

但终端打印以下消息,我得到一个空pretty.json文件。

Extra data: line 1 column 34255 - line 1 column 173769197 (char 34254 - 173769196)
Run Code Online (Sandbox Code Playgroud)

我正在考虑安装visual basic,只是为了转换文件。但是有没有更好更有效的方法来进行转换?

dib*_*ery 6

最简单的方法是使用jq漂亮的打印 json:

jq . myjsonfile.json > pretty.json
Run Code Online (Sandbox Code Playgroud)

但是从 python 输出中,我怀疑 json 文件可能格式错误。