Ho questo testo JSON:
{
"buildStatus" : {
"status" : "ERROR",
"conditions" : [{
"status" : "OK",
"metricKey" : "bugs"
}, {
"status" : "ERROR",
"metricKey" : "test_success_density"
}, {
"status" : "OK",
"metricKey" : "vulnerabilities"
}
],
"periods" : []
}
}
Voglio estrarre lo stato generale di buildStatus, ovvero l'output previsto era "ERRORE"
"buildStatus" : {
"status" : "ERROR",
....
}
Ho provato l'espressione sed di seguito, ma non funziona, restituisce OK
:
status= sed -E 's/.*\"buildStatus\":.*\"status\":\"([^\"]*)\",.*/\1/' jsonfile
Che cosa sto facendo di sbagliato?
jq
:jq -r .buildStatus.status