【问题标题】:Conditionally print value based on the value of another key根据另一个键的值有条件地打印值
【发布时间】:2014-07-28 18:00:04
【问题描述】:

这是一些 JSON 示例:

{
  "Tags": [
    {
      "Key": "Name",
      "Value": "foo"
    },
    {
      "Key": "Type",
      "Value": "C"
    }
  ]
}

我只想在“Key”为“Type”时打印“Value”的值。所以它应该打印出“C”。这就是我到目前为止所拥有的。

echo $MY_TAGS | jq 'if .Tags[].Key == "Type" then .Tags[].Value else empty end'

但它会打印出来:

“富”
“C”

有没有办法做到这一点?

【问题讨论】:

    标签: json jq


    【解决方案1】:

    试试这个:

    .Tags[] | select(.Key == "Type") | .Value
    

    【讨论】:

      猜你喜欢
      • 2021-05-07
      • 2012-11-06
      • 1970-01-01
      • 2021-10-20
      • 1970-01-01
      • 2012-05-29
      • 1970-01-01
      • 2014-10-06
      相关资源
      最近更新 更多