Json JQ向嵌套数组中的嵌套对象添加属性
我有以下json:Json JQ向嵌套数组中的嵌套对象添加属性,json,jq,Json,Jq,我有以下json: { "first": { "second" : "A" }, "array": [ { "name" : "AAA", "something": { "hola": "hi" } }, { "name" : "BBB", "something": { "hola": "hi" } } ] } { "first":
{
"first": {
"second" : "A"
},
"array": [
{
"name" : "AAA",
"something": {
"hola": "hi"
}
},
{
"name" : "BBB",
"something": {
"hola": "hi"
}
}
]
}
{
"first": {
"second" : "A"
},
"array": [
{
"name" : "AAA",
"something": {
"hola": "hi",
"NEW_PROPERTY": "AAA"
}
},
{
"name" : "BBB",
"something": {
"hola": "hi",
"NEW_PROPERTY": "BBB"
}
}
]
}
我想使用父对象的name
属性中的值,将属性添加到something
对象中,以对其进行转换,如:
我有以下json:
{
"first": {
"second" : "A"
},
"array": [
{
"name" : "AAA",
"something": {
"hola": "hi"
}
},
{
"name" : "BBB",
"something": {
"hola": "hi"
}
}
]
}
{
"first": {
"second" : "A"
},
"array": [
{
"name" : "AAA",
"something": {
"hola": "hi",
"NEW_PROPERTY": "AAA"
}
},
{
"name" : "BBB",
"something": {
"hola": "hi",
"NEW_PROPERTY": "BBB"
}
}
]
}
哪个jq表达式可以执行此操作?尝试以下jq脚本:
<file jq '.array = [ .array[] | .something.NEW_PROPERTY = .name ]'
您可以简单地使用过滤器:
.array |= map(.something.NEW_PROPERTY = .name)
或者如果map
不是你的事(或者如果你想保存键入一个字符):
美好的我错过了添加.name
字段的最后一块。