Шпаргалки / Объяснение

Шпаргалка: найти буквальный текст и понять статус grep

Ищите точную строку без регулярных выражений, добавьте номера и отличите отсутствие совпадений от ошибки. Подсчёт строк не равен подсчёту всех вхождений.

Начальный6 минОбщие принципы LinuxGNU Coreutils · documented stable optionsBash · pipeline semantics

Когда открыть эту шпаргалку

Точка, квадратные скобки и другие знаки могут иметь особый смысл в регулярном выражении. Для поиска буквального сообщения выберите -F и передайте шаблон отдельным аргументом. Так задача поиска текста не превращается в задачу построения regex.

Выбор команды

Файл app.log и сообщение queue.full — образцы для подстановки. Опции ниже меняют представление или выбор строк, а не исправляют журнал.

Что выяснитьКоманда или выражениеКак читать результат
Буквальная строкаgrep -F -- 'queue.full' app.logТочка трактуется буквально.
Номера строкgrep -Fn -- 'queue.full' app.logНомер относится к текущему содержимому файла.
Строки без сообщенияgrep -Fv -- 'queue.full' app.logИнверсия отбора, а не удаление подстроки из строки.
Число подходящих строкgrep -Fc -- 'queue.full' app.logОдна строка считается один раз даже при нескольких вхождениях.
Только проверка наличияgrep -Fq -- 'queue.full' app.logЧитайте статус; при раннем совпадении GNU grep -q может не сообщить о некоторых ошибках позднего чтения.

Короткая последовательность

После обычного grep сразу сохраните статус: следующая команда может заменить значение $?. Здесь вывод остаётся видимым для ручной проверки.

Локальная Linux-система
grep -Fn -- 'queue.full' app.log
status=$?
printf 'grep status=%s\n' "$status"

Проверка вывода

Для обычного grep статус 0 означает найденные совпадения, 1 — их отсутствие, 2 — ошибку. Не называйте любой ненулевой статус аварией. Пустой вывод может соответствовать и отсутствию совпадений, и ошибке открытия: смотрите stderr и код.

Границы применения

Несколько -e описывают альтернативные шаблоны, а последовательные grep в pipeline могут задавать другое условие. Для произвольных бинарных данных выберите подходящую стратегию чтения. Сохранённый номер строки перестаёт быть стабильным указателем после редактирования журнала.

Технические источники

Использованы для проверки поведения. Объяснения и учебные сценарии созданы для проекта.

  • Руководство grep(1)

Проверка текста: 2026-09-11. Нативное исполнение на всей матрице дистрибутивов ещё не подтверждено.

Примеры для собственной Linux-системы с Bash и указанными утилитами. Наличие пакетов и набор опций проверьте в установленной версии; браузерный терминал поддерживает только своё подмножество.

От материала к практике

Выберите следующую тему в каталоге Linux или проверьте знакомые команды в учебном терминале.

Поиск по Linux

Поиск локальный. ↑ ↓ — перейти к результату, Enter — открыть.

Навигация