jq 将对象键值映射到包含两者的对象数组

Par*_*gon 2 json flatten jq

我想将对象父键放入对象本身并将每个键值对转换为数组

鉴于:

{
  "field1": {
    "key1": 11,
    "key2": 10
  },
  "field2": {
    "key1": 11,
    "key2": 10
  }
}
Run Code Online (Sandbox Code Playgroud)

所需输出

[
   {"name": "field1", "key1": 11, "key2": 10},
   {"name": "field2", "key1": 11, "key2": 10}
]
Run Code Online (Sandbox Code Playgroud)

我知道这jq keys会给我["field1", "field2"]并且jq '[.[]]'会给我

[
  { "key1": 11, "key2": 10 },
  { "key1": 11, "key2": 10 }
]
Run Code Online (Sandbox Code Playgroud)

我无法找到将它们结合起来的方法,我该怎么做?

ogu*_*ail 5

为每个键生成一个表单对象{"name": <key>},并将其与键的值合并。

to_entries | map({name: .key} + .value)
Run Code Online (Sandbox Code Playgroud)

或者:

[keys_unsorted[] as $k | {name: $k} + .[$k]]
Run Code Online (Sandbox Code Playgroud)