в следующем файле, мне нужно получить все строки, в которых нет следующего шаблона:
\"\d\d\d\":[
мне не нужна строка "memo": {
или "notice": "delivered on 17"
, я просто хочу строки, которые имеют \"\d\d\d\":[
, но вместо этого имеют \"\d\d\":[
или \"\s\d\d\":[
et c. Как это можно сделать с помощью sed или awk или, что еще лучше, с jq?
Мне просто нужны строки, в которых нет шаблона \"\d\d\d\":[
, например, \"42 \":[
. Каждая строка сообщения должна иметь \"\d\d\d\":[
, а не любые другие варианты. Например, \"42a\":[
также неверно, и о нем следует сообщить
{
"memo": {
"notice": "delivered on 17"
},
"message": "{\"id\":\"1\",\"401\":[[\" 0\",[\"a\",\"UK\"],[\"b\",\"Euy/ O\"],[\"c\",\"20160811\"],[\"g\",\"R2\"]],[\" 1\",[\"a\",\"UK\"],[\"b\",\"LO\"],[\"c\",\"20160811\"]]]}"
}
{
"memo": {
"notice": "delivered on 190"
},
"message": "{\"id\":\"2\",\"424\":[[\" 0\",[\"v\",\"UK\"],[\"9\",\"Euy/ O\"],[\"c\",\"20160811\"],[\"g\",\"R2\"]],[\" 1\",[\"a\",\"UK\"],[\"b\",\"LO\"],[\"c\",\"20160811\"]]]}"
}
{
"memo": {
"notice": "delivered on 734"
},
"message": "{\"id\":\"3\",\"432\":[[\" 0\",[\"a\",\"UK\"],[\"9\",\"Euy/ O\"],[\"c\",\"20160811\"],[\"v\",\"R2\"]],[\" 1\",[\"a\",\"UK\"],[\"b\",\"LO\"],[\"c\",\"20160811\"]]]}"
}
{
"memo": {
"notice": "delivered on 1092"
},
"message": "{\"id\":\"888\",\"5 2\":[[\" 0\",[\"v\",\"UK\"],[\"b\",\"Euy/ O\"],[\"c\",\"20160811\"],[\"g\",\"R2\"]],[\" 1\",[\"a\",\"UK\"],[\"b\",\"LO\"],[\"c\",\"20160811\"]]]}"
}
в качестве выходных данных. Мне нужно значение id для строк, в которых возникают эти проблемы.
ожидаемый результат из вышеприведенного : id: 888
, так как в этой строке есть ошибочный \"5 2\":[