想用JQ向JSON添加更多的父键吗
我有一个JSON:想用JQ向JSON添加更多的父键吗,json,add,jq,items,Json,Add,Jq,Items,我有一个JSON: [ { "key1": "value1", "key2": "value2", "key3": "value3", "key4": "value4, "key5": { "subkey1": "subvalue1"
[
{
"key1": "value1",
"key2": "value2",
"key3": "value3",
"key4": "value4,
"key5": {
"subkey1": "subvalue1",
"subkey2": "subvalue2",
"subkey3": "subvalue3"
}
}
]
我想使用JQ构建一个新的JSON,并添加更多项,让我解释一下,我想得到以下结果:
{
"NEWKEY1": "NEWVALUE2",
"NEWKEY2": [
{
"NEWKEY3": "UPSNEWVALUE3",
"NEWKEY4": {
"key1": "value1",
"key2": "value2",
"key3": "value3",
"key4": "value4,
"key5": {
"subkey1": "subvalue1",
"subkey2": "subvalue2",
"subkey3": "subvalue3"
}
}
}
]
}
我怎么能得到呢
谢谢大家如果data.json包含新数据,template.json包含带有NEWKEY1的模板,等等,那么下面的调用将生成所需的输出:
jq --argfile in data.json '.NEWKEY2[0].NEWKEY4 = $in[0]' template.json
狡辩
是的,我知道jq手册不推荐使用--argfile
,所以可以随意使用众多备选方案中的一个,但是jq的所有当前可用版本都支持它,这比类似备选方案的支持程度更高