====== 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) |