У меня есть этот текст JSON:
{
"buildStatus" : {
"status" : "ERROR",
"conditions" : [{
"status" : "OK",
"metricKey" : "bugs"
}, {
"status" : "ERROR",
"metricKey" : "test_success_density"
}, {
"status" : "OK",
"metricKey" : "vulnerabilities"
}
],
"periods" : []
}
}
Я хочу извлечь общее состояние buildStatus, т.е. ожидаемый результат был "ОШИБКА"
"buildStatus" : {
"status" : "ERROR",
....
}
Я попробовал выражение sed ниже, но оно не работает, оно возвращает OK
:
status= sed -E 's/.*\"buildStatus\":.*\"status\":\"([^\"]*)\",.*/\1/' jsonfile
Что я делаю неправильно?
jq
:jq -r .buildStatus.status