linux解析json编码格式,linux下解析json格式的jq工具

linux下解析json格式的jq工具

第一章 jq入门

1、linux下jq工具的安装

vim中使用jq工具

第二章 linux下jq工具的基本使用

1、检查json文件的格式的合法性

2、显示json文件的所有内容

3、通过Key获取Value的值

4、嵌套解析

5、内建函数

6、jq使用的参考链接

linux下解析json格式的jq工具

jq工具会把json文件更有好的读取出来,此外,jq工具还在背后检查json文件的合法性,如果文件存在格式上的错误,jq也会报出错误存在的位置

第一章 jq入门

1、linux下jq工具的安装

sudo apt-get install jq -y

vim中使用jq工具

注意提前备份json文件,因为该操作会直接修改文件

在vim的最后一行模式下使用

:%!jq '.'

第二章 linux下jq工具的基本使用

1、检查json文件的格式的合法性

如果该json文件存在格式错误,会报出错误存在的位置,如:

"url"

parse error: Expected string key before ':' at line 1, column 6

2、显示json文件的所有内容

cat json | jq .

3、通过Key获取Value的值

cat json | jq '.name'

解析不存在的元素key时,会返回null.

4、嵌套解析

案例1

cat json_area.txt | jq '.location.state'

"Beijin"

案例2

$ cat jsondemo

[

{

"sha": "7b81a836c31500e685d043729259affa8b670a87",

"commit": {

"author": {

"name": "William Langford",

"email": "wlangfor@gmail.com",

"date": "2017-06-19T14:55:26Z"

}

}

}

]

$ cat jsondemo | jq '.[0].sha'

"7b81a836c31500e685d043729259affa8b670a87"

5、内建函数

jq拥有一些内建的函数,如has,key等, key函数用于获取json中的Key

jq 'keys' json_file

has判断json文件中是否有某一个Key

cat json_raw.txt | jq 'has("name")'

true

cat json_raw.txt | jq 'has("noexisted")'

false

6、jq使用的参考链接

http://xmodulo.com/how-to-parse-json-string-via-command-line-on-linux.html

http://iamsk.info/2013/06/03/jq/

http://stedolan.github.io/jq/manual/

https://github.com/stedolan/jq 了解源码如何实现

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值