Valeur d'impression conditionnelle en fonction de la valeur d'une autre clé

StackOverflow https://stackoverflow.com//questions/25001349

  •  20-12-2019
  •  | 
  •  

Question

Voici un exemple JSON:

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

Je veux imprimer la valeur de "valeur" uniquement lorsque "TYPE" est "TYPE".Donc, il devrait imprimer "c".C'est ce que j'ai jusqu'à présent.

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

mais il imprime:

"foo"
"C"

Y a-t-il un moyen de faire cela?

Était-ce utile?

La solution

Essayez ceci:

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

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top