JQ:打印键和属性值
JQ: Print Key and Attribute Value
我一直在尝试打印一个键和属性值,所以给出这个 JSON
[
{
"key": "foo",
"value": { "sub" : false}
},
{
"key": "bar",
"value": { "sub" : true}
}
]
我想要return这样的东西:
[
{
"foo": "false"
},
{
"bar": "true"
}
]
我正在使用 to_entries 来执行此操作,但是当我将 JSON 输入 JQ 时,我似乎无法正确访问它?我收到一个错误:
jq: error (at :9): Cannot index array with string "key"
This test case 简化行为
你不能在这里真正使用 to_entries
,它从 key/value 对象的数组中创建一个对象。您正在尝试将 key/value 对象映射到另一个对象。直接贴图就可以了
map({ (.key): .value.sub })
我一直在尝试打印一个键和属性值,所以给出这个 JSON
[
{
"key": "foo",
"value": { "sub" : false}
},
{
"key": "bar",
"value": { "sub" : true}
}
]
我想要return这样的东西:
[
{
"foo": "false"
},
{
"bar": "true"
}
]
我正在使用 to_entries 来执行此操作,但是当我将 JSON 输入 JQ 时,我似乎无法正确访问它?我收到一个错误:
jq: error (at :9): Cannot index array with string "key"
This test case 简化行为
你不能在这里真正使用 to_entries
,它从 key/value 对象的数组中创建一个对象。您正在尝试将 key/value 对象映射到另一个对象。直接贴图就可以了
map({ (.key): .value.sub })