脚本
#!/bin/bash
json_data='{"aaa": "111", "bbb": "222"}'
function parse_json(){
echo "${1//\"/}" | sed "s/.*$2:\([^,}]*\).*/\1/"
}
function main(){
echo "json_data: $json_data"
value=`echo $json_data | sed s/[[:space:]]//g`
echo "[+] value: $value"
aaa=$(parse_json $value "aaa")
echo "[+] aaa: $aaa"
bbb=$(parse_json $value "bbb")
echo "[+] bbb: $bbb"
}
main
结果
[root@localhost test]# bash abc.sh
json_data: {"aaa": "111", "bbb": "222"}
[+] value: {"aaa":"111","bbb":"222"}
[+] aaa: 111
[+] bbb: 222
注:json数据中的空格及双引号作用