将 JSON 数组中的每个项目转换为 JSON 对象

将 JSON 数组中的每个项目转换为 JSON 对象

我需要转换这个简单的 JSON 数组:

["169","19","33"]

为每个项目创建一个更复杂的 JSON 对象,例如:

{
  "groups": [
    {
      "groupid": 169
    },
    {
      "groupid": 19
    },
    {
      "groupid": 33
    }
  ]
}

目前,我使用非为 JSON 设计的工具(如 sed、awk 和任何 Unix 工具)来执行此操作 — — 这些工具很脏 — — 而且我无法使用 JQ。

是否可以使用更优雅的解决方案将 JSON 数组通过 JQ 转换为 JSON 对象?

答案1

jq应该可以解决问题:

jq '{groups: [ .[] | {groupid: .} ]}'

相关内容