我有一個json文件,其中包含null
s作爲值的一些鍵,我想用一些特定的值來替換。如何使用jq將json文檔中的空值替換爲特定值?
鑑於此輸入:
{
"id": null,
"rows": [
{
"panels": [
{
"title": "Panel1",
"datasource": null
},
{
"title": "Panel2",
"datasource": null
}
]
}
]
}
我想有
{
"id": null,
"rows": [
{
"panels": [
{
"title": "Panel1",
"datasource": "mydb"
},
{
"title": "Panel2",
"datasource": "mydb"
}
]
}
]
}
我目前使用的是什麼
sed 's/"datasource": null/"datasource": "mydb"/'
這將產生輸出我需要的,但我一直在想在工作中使用sed
是件可恥的事情,當有工具如jq
可以以更好的方式在JSON上工作。
只有當數據源字段的完整路徑得到修復時纔可以這樣做嗎? – holgero
有辦法讓它更新任何級別的任何對象上的任何'datasource'屬性。我將添加該示例。 –