我的json看起来如下所示
[
{
"100": "ONE",
"200": "TWO"
},
{
"100": "1",
"200": "2"
}
]我期待着下面的输出
{
"1": "ONE",
"2": "TWO"
} 我在这里发现的答案很少,但都有静态键,但在我的例子中,键是动态的。
另一个例子
{
"apiVersion": "v1",
"data": {
"bac6f56f-101c-26da-edfa-c08e6622a337": "1"
},
"kind": "ConfigMap",
"metadata": {
"annotations": {
"bac6f56f-101c-26da-edfa-c08e6622a337": "restart"
},
"creationTimestamp": "2020-06-25T14:53:06Z",
"uid": "7b1dfc3a-1357-400e-b750-a1ff98a204b9"
}
} 而预期的产出是
{"restart":"1"}发布于 2021-06-24 21:16:13
下面是第一个问题的免还原解决方案,希望它也能阐明一般方法:
.[0] as $dict
| .[1]
| with_entries( {value: $dict[.key], key: (.value|tostring) } )第二个问题的解决
使用上述方法,我们只需调整前两行:
.data as $dict
| .metadata.annotations
| with_entries( {value: $dict[.key], key: (.value|tostring) } )https://stackoverflow.com/questions/68112580
复制相似问题