【问题标题】:jq - nested dictionary parser and extract keyjq - 嵌套字典解析器和提取键
【发布时间】:2017-11-10 09:38:50
【问题描述】:

我正在尝试用 jq 解析以下结构:

{
    "a": {
        "sensitive": false,
        "type": "string",
        "value": "mykeypair"
    },
    "b": {
        "sensitive": false,
        "type": "string",
        "value": "123"
    }
}

并将其作为输出:

{
        "a": "mykeypair",
        "b": "123"
}

我想要键和值,字段“值”的值。 任何想法? 干杯,

【问题讨论】:

  • 您的问题是什么?也就是说,你想达到什么目的?
  • 从标题中猜测您只想要密钥?见jqplay.org/s/KpW40peoTH
  • 我想要键和值,字段'value'的值
  • @MichaelHausenblas 起初有点令人困惑,但我认为借助您的工具,我可以实现它。感谢分享!

标签: json filter jq


【解决方案1】:

我想这就是你要找的:

[ to_entries[] | .value = .value.value ] | from_entries

更简单的方法:

with_entries(.value |= .value)

在这里查看结果:

https://jqplay.org/s/uHqfdPoF3e

【讨论】:

  • 您可以使用以下方法大大简化该方法:with_entries(.value |= .value)
【解决方案2】:

如果您只是获取根对象中每个valuevalue,则可以使用map_values/1 来获取这些值。

map_values(.value)

【讨论】:

    猜你喜欢
    • 2019-01-02
    • 1970-01-01
    • 2014-12-06
    • 2018-09-05
    • 2021-10-25
    • 1970-01-01
    • 1970-01-01
    • 2021-05-10
    • 1970-01-01
    相关资源
    最近更新 更多