如何在命令行里格式化JSON

Screen Shot 2019-12-01 at 14.18.36.png
身为一名软件工程师,我们经常需要在命令行里面优雅的显示 JSON,那么如何做呢?

有两种比较简单的方式可以从命令行漂亮的打印 JSON 字符串,第一种使用python,另外一种就是使用 jq 命令。

使用 python

用法:

input | python -mjson.tool

input 作为json输入流,经过管道,最后使用 python -mjson.tool 处理

Example 1:

echo '{"perso":{"name": "dev4mobile"}}' | python -mjson.tool

Output:

{
    "perso": {
        "name": "dev4mobile"
    }
}

Example 2:

curl http://127.0.0.1:8080 | python -mjson.tool

Output:

{
    "timestamp": "2019-12-01T06:01:46.993+0000",
    "status": 404,
    "error": "Not Found",
    "message": "No message available",
    "path": "/"
}

上边是常用的两个例子

使用 jq 命令

安装 jq

  1. mac os 平台
brew install jq
  1. Ubuntu 平台
sudo apt-get install jq

用法:

input | jq .

jq 后面的 . 是代表整个input 对象,所以jq .就是格式化整个 JSON

Example 1

echo '{"perso":{"name": "dev4mobile"}}' | jq .

Output:

{
  "perso": {
    "name": "dev4mobile"
  }
}

Example 2

curl http://127.0.0.1:8080 | jq .

Output:

{
  "timestamp": "2019-12-01T06:12:19.838+0000",
  "status": 404,
  "error": "Not Found",
  "message": "No message available",
  "path": "/"
}

欢迎访问我的网站: 我的博客

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值