По умолчанию GREP выводит всю строку, где был обнаружен указанный вами шаблон поиска. Для форматированных текстовых файлов это подходит. Но если в поиск попадает минифицированный текстовый или binary файл, то в консоль вываливается неприлично много текста.
Так как проблема связана с неформатированным текстом, в котором нет переходов на новую строку, то использование ключей вроде -B, -A, ограничивающих кол-во строк до и после, не помогут.
Я использую следующее регулярное выражение:
|
|
grep -roP "[^\n]{0,100}(Искомая фраза)[^\n]{0,100}" |
Используемые ключи:
-r : рекурсивный поиск в подкаталогах,
-o : ограничивает вывод только совпадением с шаблоном,
-P : использует perl-like синтаксис регулярных выражений.
Если текст форматирован, то под шаблон попадет только одна строка с начала и до конца, но не более 100 символов от начала и после искомой фразы. Если поиск нашел совпадение в двоичном файле или оптимизированном текстовом файле, тогда до и после искомой фразы будет выведено не более 100 символов.
UNIX
Данная запись опубликована в 28.11.2018 13:15 и размещена в рубрике Программирование.
Вы можете перейти в конец страницы и оставить ваш комментарий.
Мало букафф? Читайте есчо !
Май 31, 2025 г.
cron — это системный планировщик задач в Linux. Он позволяет запускать команды по расписанию, например: каждые 15 минут отправлять запрос на сайт или запускать скрипт.
В статье разберём два способа как правильно добавить новую строку в crontab, на ...
Читать
Декабрь 3, 2019 г.
Задача возникла в контексте SEO, требовалось предотвратить индексацию тестовых сайтов поисковыми системами. На практике видно, что инструкции файла robots.txt ...
Читать
Декабрь 2, 2018 г.
Lessc не имеет ключа 'слежения', чтобы выполнять перекомпиляцию при изменении less файлов проекта, как например это сделано у sass компилятора. Это весьма не удобно на этапе верстки шаблона из макета.
Для отслеживания я установил UNIX утилиту inotify. ...
Читать
Январь 31, 2023 г.
... и выполнить те или иные операции в зависимости от результата проверки, используя командный процессор, например bash.
Примерно так формулируется очередная небольшая задача, возникающая в ежедневном потоке рутины автоматизации работы.
Существует ...
Читать