GREP(1)
НАЗВАНИЕ
grep - поиск по шаблону, заданному ограниченным регу-
лярным выражением
СИНТАКСИС
grep [-b] [-c] [-i] [-l] [-n] [-s] [-v]
ограниченное_регулярное_выражение [файл ...]
ОПИСАНИЕ
Команда grep сопоставляет строки исходных файлов с шаблоном, заданным ограниченным_регулярным_выражением. Если файлы не указаны, используется стандартный ввод. Обычно каждая успешно сопоставленная строка копируется
на стандартный вывод; если исходных файлов несколько,
перед найденной строкой выдается имя файла. В grep используется компактный недетерминированный алгоритм. В
качестве шаблонов воспринимаются ограниченные регулярные выражения (выражения, имеющие своими значениями цепочки символов, и использующие ограниченный набор алфавитно-цифровых и специальных символов). Они имеют тот
же смысл, что и регулярные выражения в ed(1).
Для экранирования символов $, *, [ ], ^, |, ( ), и \ от
интерпретации shell'ом проще всего заключать ограниченное_регулярное_выражение в одинарные кавычки.
В командной строке могут задаваться следующие опции:
-b | Перед каждой строкой ставить номер блока, в котором она находится. Используется для поиска блока по контексту (блоки нумеруются с нуля).
|
---|
-c | Выдавать только количество успешно сопоставленных строк.
|
---|
-i | При сопоставлении не различать большие и малые буквы.
|
---|
-l | Выдавать только имена файлов, в которых есть успешно сопоставленные строки, разделяя имена переводами строк.
|
---|
-n | Перед каждой строкой ставить ее номер в файле (строки нумеруются с 1).
|
---|
-s | Подавить выдачу диагностических сообщений о несуществующих и недоступных для чтения файлах.
|
---|
-v | Выдавать только строки, не удовлетворяющие шаблону.
|
---|
СМ. ТАКЖЕ
ed(1), egrep(1), fgrep(1), sed(1), sh(1).
КОДЫ ЗАВЕРШЕНИЯ
0 Были успешные сопоставления.
1 Успешных сопоставлений не было.
2 Есть синтаксические ошибки или недоступные файлы
(даже если были успешные сопоставления).
СЮРПРИЗЫ
В идеале должна быть одна утилита для поиска по шаблону, однако трудно придумать алгоритм, достигающий во всех случаях приемлемого компромисса между расходом
времени и памяти.
Длина строки ограничена BUFSIZ символами; более длинные
строки обрезаются. Значение BUFSIZ определяется во
включаемом файле .
Если в конце строки стоит несколько пустых символов (с
кодом 0), grep выполняет сопоставление только до первого из них; в случае успеха выдается вся строка.