使用JQ,转换名称/值对数组命名键对象(Using jq, convert array of nam

2019-11-05 04:27发布

鉴于该格式为JSON文件:

[
  {
    "name" : "A",
    "value" : "4"
  },
  {
    "name" : "B",
    "value" : "2"
  },
  {
    "name" : "C",
    "value" : {
      "X": "Something",
      "Y": "Else"
    }
  }
]

我将如何将其转换为这样的使用JQ:

{
  "A": "4",
  "B": "2",
  "C": {
    "X": "Something",
    "Y": "Else"
  }
}

我没有接近使用jq 'map( { (.name): .value } )但仍留下的每个对象在其单独支撑而不是它们放在一起的。

Answer 1:

用你的方法,只需添加add到您的过滤器:

map( { (.name): .value } ) | add


文章来源: Using jq, convert array of name/value pairs to object with named keys