Условно печатное значение на основе значения другого ключа
Вопрос
Вот какой-то пример 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
. Не связан с StackOverflow