По умолчанию 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 и размещена в рубрике Программирование.
Вы можете перейти в конец страницы и оставить ваш комментарий.
Мало букафф? Читайте есчо !
Апрель 8, 2019 г.
Речь пойдет о полезных командах для просмотра логов в UNIX. Все мы знаем, что в папке /var/log, демоны unix-системы типично сохраняют свои логи.
Переходим в нужную папку:
[crayon-6ace87b90b1d3025340709/]
К примеру, мы хотим посмотреть файл ...
Читать
Январь 31, 2023 г.
... и выполнить те или иные операции в зависимости от результата проверки, используя командный процессор, например bash.
Примерно так формулируется очередная небольшая задача, возникающая в ежедневном потоке рутины автоматизации работы.
Существует ...
Читать
Май 31, 2025 г.
cron — это системный планировщик задач в Linux. Он позволяет запускать команды по расписанию, например: каждые 15 минут отправлять запрос на сайт или запускать скрипт.
В статье разберём два способа как правильно добавить новую строку в crontab, на ...
Читать
Июль 24, 2017 г.
Если вы решили сэкономить и получить бесплатный SSL сертификат, то в большинстве случаев сделать это не сложно. Благодаря проекту Lets' encrypt процесс получения и настойки автоматизирован и выполняется буквально 2-3 командами в консоли сервера.
...
Читать