Все знают grep "что-то" файл. Но в утилите есть тёмные углы, которые превращают её из поиска строк в настоящий анализатор логов и кода. ➤ Вариант 1 (Поиск по временному диапазону в логах): логи обычно начинаются со времени. Нужно вытащить кусок между двумя метками. # Логи с 10:00 до 10:15 grep "^2026-04-13 10:[0-1][0-9]" app.log # С помощью флага -A (after) и -B (before) grep -B 5 -A 10 "2026-04-13 10:15:00" app.log ➤ Вариант 2 (Поиск по сложным паттернам с переносом строк): когда ошибка размазана на несколько строк, а -A и -B не хватает. # Использование pcre (Perl-совместимые регексы) через -P grep -Pzo "(?s)Exception.*?\n\s+at.*?\n" app.log # -z читает весь файл как одну строку # -o выводит только совпадения # -P включает переносы в регексах ➤ Вариант 3 (Работа с бинарными файлами): иногда нужно найти строку в дампе памяти или логе, который grep считает бинарным. # Принудительно обрабатывать файл как текстовый grep -a "password" memory.dump # Или наоборот — исключить бина
grep - возможности, о которых вы могли не знать
15 апреля15 апр
1 мин