Menu
Coddy logo textTech

Grep с флагами

Часть раздела Основы путешествия по Terminal на Coddy — урок 35 из 82.

grep становится ещё более мощным, когда вы добавляете флаги для управления тем, как он выполняет поиск и что отображает.

Самые полезные флаги grep:

-i — поиск без учёта регистра (case insensitive). Находит совпадения независимо от верхнего или нижнего регистра:

grep -i "error" server.log   # совпадает с error, Error, ERROR

-nномера строк рядом с каждой совпадающей строкой:

grep -n "error" server.log
3:error: disk full
6:error: connection timeout

-c — показывает только count совпадающих строк, а не сами строки:

grep -c "error" server.log
2

-vinvert search — show lines, которые не match шаблону:

grep -v "info" server.log
error: disk full
warning: high memory usage
error: connection timeout

-r — искать рекурсивно по всем файлам в директории:

grep -r "error" logs/   # искать все файлы внутри папки logs

-l — показывать только имена файлов, содержащие совпадение, а не сами совпадающие строки:

grep -l "error" *.log

Комбинирование флагов:

Вы можете комбинировать несколько флагов:

grep -in "error" server.log   # без учёта регистра + показать номера строк
grep -vc "info" server.log    # инвертировать + подсчитать строки без info
challenge icon

Задание

Легко

Используйте grep с флагами для проверки server.log тремя разными способами:

  1. Найдите все строки, содержащие error, и покажите их номера строк с помощью -n
  2. Подсчитайте, сколько строк содержат info, с помощью -c
  3. Покажите все строки, которые не содержат info, с помощью -v

Подсказка: Выполните все три команды одну за другой. Каждый флаг меняет то, как grep выводит результаты.

Попробуйте сами

Терминал
quiz iconПроверьте себя

В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.

Все уроки раздела Основы