Bu json metni var:
{
"buildStatus" : {
"status" : "ERROR",
"conditions" : [{
"status" : "OK",
"metricKey" : "bugs"
}, {
"status" : "ERROR",
"metricKey" : "test_success_density"
}, {
"status" : "OK",
"metricKey" : "vulnerabilities"
}
],
"periods" : []
}
}
Ben buildStatus genel durumunu ayıklamak istiyorum, yani beklenen çıktı "HATA" oldu
"buildStatus" : {
"status" : "ERROR",
....
}
Aşağıdaki sed ifadesini denedim, ancak çalışmıyor, döndürür OK
:
status= sed -E 's/.*\"buildStatus\":.*\"status\":\"([^\"]*)\",.*/\1/' jsonfile
Neyi yanlış yapıyorum?
jq
:jq -r .buildStatus.status