shell脚本解析json文件

安装jq扩展

下载:jq    

根据自己系统下载对应的文件

1 cp jq-linux64 /usr/bin
2 cd /usr/bin
3 mv jq-linux64 jq
4 chmod +x jq

使用方法

假设有个test.json文件

 1 {
 2     "menu": {
 3         "id": "file",
 4         "value": "File:",
 5         "popup": {
 6             "menuitem": {
 7                 "value": "New",
 8                 "onclick": "CreateNewDoc()"
 9             }
10         }
11     }
12 }

现在要通过shell获取到 menu.id 的内容

1 #! /bin/bash
2 
3 JQ_EXEC=`which jq`
4 
5 FILE_PATH=test.json
6 
7 id=$(cat $FILE_PATH | ${JQ_EXEC} .menu.id | sed 's/\"//g')
8 echo $id 

如果要继续取下一层数据的内容 把命令改成 

id=$(cat $FILE_PATH | ${JQ_EXEC} .menu.popup.menuitem | sed 's/\"//g')

 

posted @ 2017-06-28 16:43  L狗哥  阅读(20024)  评论(0编辑  收藏  举报