Unix Man (Справочное руководство)

         

GREP(1)


GREP(1)

НАЗВАНИЕ


grep - поиск по шаблону, заданному ограниченным регу- лярным выражением

СИНТАКСИС

grep [-b] [-c] [-i] [-l] [-n] [-s] [-v] ограниченное_регулярное_выражение [файл ...]

ОПИСАНИЕ


Команда grep сопоставляет строки исходных файлов с шаблоном, заданным ограниченным_регулярным_выражением. Если файлы не указаны, используется стандартный ввод. Обычно каждая успешно сопоставленная строка копируется на стандартный вывод; если исходных файлов несколько, перед найденной строкой выдается имя файла. В grep используется компактный недетерминированный алгоритм. В качестве шаблонов воспринимаются ограниченные регулярные выражения (выражения, имеющие своими значениями цепочки символов, и использующие ограниченный набор алфавитно-цифровых и специальных символов). Они имеют тот же смысл, что и регулярные выражения в .

Для экранирования символов $, *, [ ], ^, |, ( ), и \ от интерпретации shell'ом проще всего заключать ограниченное_регулярное_выражение в одинарные кавычки.

В командной строке могут задаваться следующие опции:

-b -c -i -l -n -s -v
Перед каждой строкой ставить номер блока, в котором она находится. Используется для поиска блока по контексту (блоки нумеруются с нуля).
Выдавать только количество успешно сопоставленных строк.
При сопоставлении не различать большие и малые буквы.
Выдавать только имена файлов, в которых есть успешно сопоставленные строки, разделяя имена переводами строк.
Перед каждой строкой ставить ее номер в файле (строки нумеруются с 1).
Подавить выдачу диагностических сообщений о несуществующих и недоступных для чтения файлах.
Выдавать только строки, не удовлетворяющие шаблону.

СМ. ТАКЖЕ


ed(1), , , , .

КОДЫ ЗАВЕРШЕНИЯ

0 Были успешные сопоставления. 1 Успешных сопоставлений не было. 2 Есть синтаксические ошибки или недоступные файлы (даже если были успешные сопоставления).

СЮРПРИЗЫ


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

Длина строки ограничена BUFSIZ символами; более длинные строки обрезаются. Значение BUFSIZ определяется во включаемом файле .

Если в конце строки стоит несколько пустых символов (с кодом 0), grep выполняет сопоставление только до первого из них; в случае успеха выдается вся строка.



Содержание раздела