我有一個麻煩,就是讓我的json應用一個新的物件到config -> list -> key(vehicle) -> Rows。但這只是針對vehicles.
我嘗試使用JQ:cat file.json | jq '.config.list[].rows[] = {"data":[{"key": "fort", "value": "K"},{"key": "seat", "value": "leon"}], "default":false}' 但是由于名稱相同,它是替換而不是追加的?
需要的物件
{
"data"/span>: [
{
"key": "自行車",
"value": "yyy"。
},
{
"key": "car",
"value": "xxx".
}
],
"default": false
}
源Json:
{
"id"/span>: "1234"。
"name": "CatList",
"config": {
"list": [
{
"key": "車輛"。
"rows": [
{
"data": [
{
"key": "自行車"。
"value": "yyy"。
},
{
"key": "car",
"value": "xxx".
}
],
"default": false
}
]
},
{
"key": " boots",
"rows": []
}
],
"data": [
{
"key": "GROUPS",
"value": "false".
}
]
}
}
想要的結果:
{
"id"。"1234"。
"name": "CatList",
"config": {
"list": [
{
"key": "車輛"。
"rows": [
{
"data": [
{
"key": "自行車"。
"value": "yyy"。
},
{
"key": "car",
"value": "xxx".
}
],
"default": false
},
{
"data": [ <-----
{ <-----
"key": "自行車", <-----
"value": "yyy" <-----
}, <-----
{ <-----
"key": "car", <-----
"value": "xxx" <-----
} <-----
], <-----
"default": false <-----
}
]
},
{
"key": " boots",
"rows": []
}
],
"data": [
{
"key": "GROUPS",
"value": "false".
}
]
}
}
uj5u.com熱心網友回復:
你很接近
jq '.config.list[.config.list|map( . key=="vehicles")|index(true)].rows = [{"data":[{"key":"fot","value":"K"},{"key":"seat","value":"leon"}],"default":false}]'
see https://stackoverflow.com/a/42248841/2235381
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/309911.html
標籤:
上一篇:檢查服務的狀態
下一篇:sed一次處理多行
