Digamos que eu tenha um json retornado assim:
export json_string='{
"summary": "1 failure",
"checks": [
{
"id": "check1",
"status": "OK"
},
{
"id": "check2",
"status": "FAILED"
},
{
"id": "check3",
"status": "CONFIG_WARNING"
}
]
}'
Como faço para obter o resumo e o cheque que não foi devolvido? Posso obter o cheque que não foi devolvido por meio de algo como:
echo "$json_string" | jq '.checks | .[] | select(.status != "OK")'
Mas eu realmente gostaria de obter o resumo e as verificações com falha, ou apenas o resumo se não houver falhas.
ATUALIZAÇÃO A resposta aceita me apontou na direção certa. Aqui está o comando que acabei usando para formatar a saída como eu queria:
echo "$json_string" | jq '{"summary": .summary, "checks":[.checks[] | select(.status != "OK")]}'