Linux下使用jq解析JSON格式的数据

来源:互联网 发布:超级能恩奶粉如何 知乎 编辑:程序博客网 时间:2024/04/29 19:43

Linux上安装jq

$ wgethttp://stedolan.github.io/jq/download/linux32/jq(32-bit system)

$ wgethttp://stedolan.github.io/jq/download/linux64/jq(64-bit system)

$ chmod+x ./jq

$ sudocp jq /usr/bin

 

 

常用用法总结:

以下面的JSON为例(首先将下面的字符串存到变量c中)

Machine generated alternative text:" localPort" "porti' "protocol" 22 "tcp" "139.219.14.155" "enabIeDirectServerReturn" false " localPort" 3333 "tcp—4444— "porti' 4444 "protocol" ' "tcp" 3333" "139.219.14.155" "enabIeDirectServerReturn" false

  1. json格式显示内容:

echo$c | jq '.'

 

  1. 显示第1Port的内容:

echo$c | jq '.[0]'

 

  1. 显示第一个Portname

echo$c | jq '.[0].name'

 

  1. 显示所有的name

echo$c | jq '.[].name'

 

  1. 显示Port的数量:

echo$c | jq '.[].length'

 

  1. 显示Port所有的Key

echo$c | jq '.[0]' | jq 'keys'

 

  1. 判断是否有某个Key

echo$c | jq '.[0]' | jq 'has("name")'

 

以上只是部分使用方法,全部方法见附件的用户手册

86 0
原创粉丝点击