Версия: 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
Установить можно отдельным модулем или пакетом:
Для установки следует воспользоваться утилитой "Установка и удаление программ".
Модуль, необходимый для установки:
Для установки следует воспользоваться утилитой "Установка и удаление программ".
Пакет, необходимый для установки:
Внимание! Если система загружена в режиме полного сохранения, то внесенные изменения в систему будут сохранены после перезагрузки.
Если режим загрузки другой, то рекомендуется воспользоваться утилитой "Сохранение изменений" до перезагрузки системы.