Valeur d'impression conditionnelle en fonction de la valeur d'une autre clé
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?
La solution
Essayez ceci:
.Tags[] | select(.Key == "Type") | .Value
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow