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')