Версия: 3.7
grep - используется для поиска и фильтрации текстовых данных на основе шаблонов.
Основная цель - найти строки в файле или потоке данных, которые соответствуют заданному шаблону. Это мощный инструмент для обработки текста, который позволяет выполнять различные операции совпадений, фильтрации и поиска.
Разработчик:
Mike Haertel
Лицензия:
Стандартная общественная лицензия GNU версии 3 (GPLv3)
Синтаксис:
grep [параметр]… шаблоны [файл]…
Пример:
grep -i 'hello world' menu.h main.c
Шаблон выбора и его интерпретация:
Шаблон | Описание |
---|---|
-E, --extended-regexp | ШАБЛОНЫ — расширенные регулярные выражения |
-F, --fixed-regexp | ШАБЛОНЫ — строки |
-G, --basic-regexp | ШАБЛОНЫ — простые регулярные выражения |
-P, --perl-regexp | ШАБЛОНЫ — регулярные выражения языка Perl |
-e, --regexp=ШАБЛОНЫ | Использовать ШАБЛОНЫ для поиска |
-f, --file=ФАЙЛ | Брать ШАБЛОНЫ из ФАЙЛа |
-i, --ignore-case | Игнорировать различие регистра |
--no-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=ЧИСЛО |
--group-separator=SEP | Печатать SEP в строке между совпадениями с контекстом |
--no-group-separator | Не печатать разделитель между совпадениями с контекстом |
--color[=КОГДА], --colour[=КОГДА] | использовать маркеры для различия совпадающих строк; КОГДА может быть «always» (всегда), «never» (никогда) или «auto» (автоматически) |
-U, --binary | не удалять символы CR в конце строки (MSDOS/Windows) |
Если в качестве ФАЙЛА указан символ «-», то читается стандартный ввод.
Если ФАЙЛ не указан, то читается текущий каталог «.» и «-» в противном
случае. Если указано менее двух ФАЙЛОВ, то предполагается -h.
При нахождении совпадений любой строки кодом завершения будет 0
и 1, если ничего не совпало. При возникновении ошибок и если не указан
параметр -q, кодом завершения будет 2.
grep "pattern" file.txt
grep -r "pattern" /path/to/directory
grep -i "pattern" file.txt
grep -l "pattern" file1.txt file2.txt
grep -n "pattern" file.txt
Установить можно отдельным модулем или пакетом:
Для установки следует воспользоваться утилитой "Установка и удаление программ".
Модуль, необходимый для установки:
Для установки следует воспользоваться утилитой "Установка и удаление программ".
Пакет, необходимый для установки:
Внимание! Если система загружена в режиме полного сохранения, то внесенные изменения в систему будут сохранены. Если режим загрузки другой, то рекомендуется воспользоваться "Сохранением изменений".