====== grep. Поиск по шаблону ======
----
===== Man =====
==== Использование ====
Поиск ШАБЛОНА в каждом ФАЙЛЕ или в стандартном вводе.
По умолчанию, ШАБЛОН представляет собой простое регулярное выражение (BRE).
grep [ПАРАМЕТР]… ШАБЛОН [ФАЙЛ]…
* Пример:
grep -i 'hello world' menu.h main.c
----
==== Опции ====
^ Опция ^ Значение ^
^ Выбор типа регулярного выражения и его интерпретация: ^^
| **%%-E, --extended-regexp%%** | ШАБЛОН - расширенное регулярное выражение (ERE) |
| **%%-F, --fixed-regexp%%** | ШАБЛОН - строки фиксированной длины, разделённые символом новой строки |
| **%%-G, --basic-regexp%%** | ШАБЛОН - простое регулярное выражение (BRE) |
| **%%-P, --perl-regexp%%** | ШАБЛОН - регулярное выражения языка Perl |
| **%%-e, --regexp=ШАБЛОН%%** | использовать ШАБЛОН для поиска |
| **%%-f, --file=ФАЙЛ%%** | брать ШАБЛОН из ФАЙЛа |
| **%%-i, --ignore-case%%** | игнорировать различие регистра |
| **%%-w, --word-regexp%%** | ШАБЛОН должен подходить ко всем словам |
| **%%-x, --line-regexp%%** | ШАБЛОН должен подходить ко всей строке |
| **%%-z, --null-data%%** | строки разделяются байтом с нулевым значением, а не символом конца строки |
^ Разное: ^^
| **%%-s, --no-messages%%** | не показывать сообщения об ошибках |
| **%%-v, --invert-match%%** | выбирать не подходящие строки |
| **%%-V, --version%%** | показать информацию о версии и закончить работу |
| **%%--help%%** | показать эту справку и закончить работу |
^ Управление выводом: ^^
| **%%-m, --max-count=ЧИСЛО%%** | остановиться после указанного ЧИСЛА совпадений |
| **%%-b, --byte-offset%%** | печатать вместе с выходными строками смещение в байтах |
| **%%-n, --line-number%%** | печатать номер строки вместе с выходными строками |
| **%%--line-buffered%%** | сбрасывать буфер после каждой строки |
| **%%-H, --with-filename%%** | печатать имя файла для каждого совпадения |
| **%%-h, --no-filename%%** | не начинать вывод с имени файла |
| **%%--label=МЕТКА%%** | использовать МЕТКУ в качестве имени файла для стандартного ввода |
| **%%-o, --only-matching%%** | показывать только часть строки, совпадающей с ШАБЛОНОМ |
| **%%-q, --quiet, --silent%%** | подавлять весь обычный вывод |
| **%%--binary-files=ТИП%%** | считать, что двоичный файл имеет ТИП: «binary», «text» или «without-match». |
| **%%-a, --text%%** | то же что и --binary-files=text |
| **%%-I%%** | то же, что и --binary-files=without-match |
| **%%-d, --directories=ДЕЙСТВ%%** | как обрабатывать каталоги ДЕЙСТВИЕ может быть «read» (читать), «recurse» (рекурсивно) или «skip» (пропускать). |
| **%%-D, --devices=ДЕЙСТВ%%** | как обрабатывать устройства, FIFO и сокеты ДЕЙСТВИЕ может быть «read» или «skip» |
| **%%-r, --recursive%%** | то же, что и --directories=recurse |
| **%%-R, --dereference-recursive%%** | тоже, но с переходом по всем символьным ссылкам |
| **%%--include=Ф_ШАБЛОН%%** | обработать только файлы, подпадающие под Ф_ШАБЛОН |
| **%%--exclude=Ф_ШАБЛОН%%** | пропустить файлы и каталоги, подпадающие под Ф_ШАБЛОН |
| **%%--exclude-from=ФАЙЛ%%** | пропустить файлы, подпадающие под шаблон файлов из ФАЙЛА |
| **%%--exclude-dir=ШАБЛОН%%** | каталоги, подпадающие под ШАБЛОН, будут пропущены |
| **%%-L, --files-without-match%%** | печатать только имена ФАЙЛОВ без совпадений |
| **%%-l, --files-with-matches%%** | печатать только имена ФАЙЛОВ с совпадениями |
| **%%-c, --count%%** | печатать только количество совпадающих строк на ФАЙЛ |
| **%%-T, --initial-tab%%** | выравнивать табуляцией (если нужно) |
| **%%-Z, --null%%** | печатать байт 0 после имени ФАЙЛА |
^ Управление контекстом: ^^
| **%%-B, --before-context=ЧИС%%** | печатать ЧИСЛО строк предшествующего контекста |
| **%%-A, --after-context=ЧИС%%** | печатать ЧИСЛО строк последующего контекста |
| **%%-C, --context[=ЧИС]%%** | печатать ЧИСЛО строк контекста |
| **%%-ЧИСЛО%%** | то же, что и --context=ЧИСЛО |
| **%%--color[=КОГДА], --colour[=КОГДА]%%** | использовать маркеры для различия совпадающих строк; КОГДА может быть «always» (всегда), «never» (никогда) или «auto» (автоматически) |
| **%%-U, --binary%%** | не удалять символы CR в конце строки (MSDOS/Windows) |
| **%%-u, --unix-byte-offsets%%** | выдавать смещения без учёта CR-ов (MSDOS/Windows) |