質問

これはいくつかの例のJSON:

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

「鍵」が「タイプ」の場合にのみ「値」の値を印刷したい。それで、それは "c"を印刷するべきです。これが私がこれまでのものを持っているものです。

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

しかしそれは印刷されます:

"foo"
"C"

これを行う方法はありますか?

役に立ちましたか?

解決

これを試してみてください:

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

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top