Bash Shell中,处理JSON数据,找出所有的Key和Value对,即所有的Name, value(名称和数值)。
其中的json_key替换为你的节点Name或者关键字。
下面的代码,可以找出json文件中,所有的json_key及其值。
cat 1.json | awk -F"," -v k="json_key" '{
gsub(/{|}/,"")
for(i=1;i<=NF;i++){
if ( $i ~ k ){
print $i
}
}
}'
如果只是需要值列表的话,参考下面代码:
cat 1.json | awk -F"," -v k="json_key" '{
gsub(/{|}/,"")
for(i=1;i<=NF;i++){
if ( $i ~ k ){
print $i
}
}
}' | sed 's/json_key//g' | sed 's/"//g' | sed 's/://g'