我该如何在命令行中漂亮地打印JSON文件?
我该如何在命令行中漂亮地打印JSON文件?
我有一个包含JSON元素序列的文件:
{ element0: "lorem", value0: "ipsum" } { element1: "lorem", value0: "ipsum" } ... { elementN: "lorem", value0: "ipsum" }
有没有一个shell脚本可以格式化JSON以显示文件内容的可读形式?
我看到了这个帖子,我认为这是一个很好的起点!
我的想法是迭代文件中的行,然后:
while read row; do echo ${row} | python -mjson.tool; done < "file_name"
有没有其他的想法呢?
admin 更改状态以发布 2023年5月21日
jq - 一款轻量级且灵活的命令行JSON处理器
当我发现这款工具时,它花费了我比预期更长的时间,因此我认为它值得一篇单独的文章。我正在寻找一种简单的方式来美化docker inspect -f
的JSON输出。Noufal Ibrahim在另一个答案中简短地提到了这个工具。
以下是来自jq网站(https://stedolan.github.io/jq/)的介绍:
jq就像是sed命令用于JSON数据处理一样-您可以使用它来切片、筛选、映射和转换结构化数据,就像sed、awk、grep等让您处理文本一样轻松。
默认提供彩色输出,您只需要将数据管道传输给jq
即可,例如:
jq . < file
例如: