Поиск строки с переносом
У меня есть логи, в которых хранится ID объекта, но он в разных меcтах название ID переносится на новую строку
Например:
adfksdhg123a3213
2ejj
adfksdhg
123a32132ejj
Как мне найти ID adfksdhg123a32132ejj в файле игнорируя перенос строки?
Ответы (1 шт):
Автор решения: Vadik
→ Ссылка
Предположим, нам нужно найти строку foo в файле input.txt без учета возможных переносов в файле.
С помощью sed сформируем регулярное выражение, добавим после каждого символа строки foo опциональный перенос \n?:
echo foo | sed 's/./\0\\n?/g'
На выходе получим:
f\n?o\n?o\n?
Теперь подставляем полученное регулярное выражение в grep:
grep -zP "f\n?o\n?o\n?" input.txt
Одной командой:
grep -zP "$(echo foo | sed 's/./\0\\n?/g')" input.txt