Команда grep: найти строки и различить коды результата
Найдите нужные строки через grep, сравните буквальный поиск и регулярные выражения. Разберите -n, -i, -v, stdout и код отсутствия совпадений.
Назначение команды
grep отбирает строки по образцу. Результат сохраняет контекст строки, что удобно при работе с журналом: можно увидеть станцию, уровень события и пояснение вместе. Отбор строки не является разбором полей структурированного формата.
Синтаксис и учебный пример
Общая форма — grep [ОПЦИИ] ОБРАЗЕЦ [ФАЙЛ...]. Без файлов читается stdin. Для буквального текста с точками и скобками явно используйте -F. Для регулярных выражений выбирайте нужный диалект и удерживайте образец в кавычках от обработки shell.
grep -n ERROR logs/sensor.logПроверка: Показаны совпадения на строках 2 и 4 исходного учебного журнала.
Опции и варианты записи
Таблица описывает реальную команду. Поддержка в виртуальной среде перечислена отдельно в конце материала.
| Запись | Смысл |
|---|---|
| -F | Буквальная строка вместо регулярного выражения. |
| -n | Добавить номер строки. |
| -i | Сопоставление без учёта регистра по правилам реализации и локали. |
| -v | Выбрать строки, которые не совпадают. |
| -E | Расширенные регулярные выражения у GNU grep. |
Вывод, ошибки и статус
Обычно код 0 означает найденные строки, 1 — отсутствие совпадений, 2 — ошибку. Диагностика идёт в stderr, выбранные строки — в stdout. У -q в GNU grep есть особенности статуса при найденном совпадении и ошибке; не переносите общее правило без учёта опций.
На что обратить внимание
Пустой вывод требует различить отсутствие совпадений, недоступный файл и неправильный регистр. В pipeline успешный wc после grep может скрыть общий ненулевой результат раннего звена без pipefail. Для имён с дефисом отделяйте опции через --.
Реальная система и учебная модель
Учебный grep поддерживает буквальное сопоставление, -F, -n, -i и -v. BRE, ERE, PCRE, рекурсивный обход и режим -q не реализованы. JavaScript Regex на отдельной странице тоже не выдаётся за GNU grep: перенос образца требует проверки диалекта.
Технические источники
Использованы для проверки поведения. Объяснения и учебные сценарии созданы для проекта.
- GNU grep — руководство
Проверка текста: 2026-09-06. Нативное исполнение на всей матрице дистрибутивов ещё не подтверждено.
Основные понятия общие для Linux. Состав утилит, версии и системные настройки зависят от окружения.
От материала к практике
Выберите следующую тему в каталоге Linux или проверьте знакомые команды в учебном терминале.