Ответ
Поиск по логам и конфигурационным файлам — ежедневная задача. Основная команда — grep. Она мощная и гибкая.
Базовый синтаксис:
grep "искомая_строка" путь_к_файлу
Практические примеры из работы тестировщика:
-
Поиск ошибок в лог-файле:
grep -n "ERROR" /var/log/myapp/app.logКлюч
-nпокажет номера строк, что упрощает навигацию по большому файлу. -
Поиск с игнорированием регистра (например, error, Error, ERROR):
grep -i "timeout" /var/log/myapp/app.log -
Рекурсивный поиск по всем файлам в директории:
grep -r "AssertionError" ./test_results/Это полезно, чтобы найти падения тестов в разных отчетах.
-
Поиск с контекстом:
grep -B2 -A2 "NullPointerException" app.logКлючи
-B2(2 строки до) и-A2(2 строки после) покажут контекст ошибки. -
Использование регулярных выражений:
grep -E "(FAILED|ERROR).*TestSuite" app.logКлюч
-Eвключает расширенные регулярные выражения. -
Поиск строк, НЕ содержащих шаблон (инвертирование):
grep -v "DEBUG" app.log > app_without_debug.logПолезно для фильтрации шумных логов.
Альтернатива для простого поиска по файлу — less:
less app.log
# Внутри less нажимаем '/' и вводим строку для поиска