Добрый день!
Лог представляет собой набор sql запросов, а так же много другой инфы (дата-время, информационные сообщения и т.д.).
Стоит задача найти sql запросы, в которых заданное поле принадлежит определенному оператору. (значения поля и оператора задаются в отдельном конфиге)
Например:
Есть запрос вида:
create table t1 as select t0.dwh_id
from t2
where t2.status = 'active';
в конфиге задаются значения поле = status, оператор = where. В результате нужно получить весь этот запрос.
Задача усложняется тем, что лог не структурирован - запросы могут быть записаны в одну строку, например. Так же значение поля status может появляться в логе не только в sql запросах и такие случаи нужно отсекать.
Нужно воплотить это все на bash.
Читала про sed, awk, не могу придумать, как их тут можно применить. В регулярных выражениях не сильна, но буду благодарна, если скажите в какую сторону копать.