2022-01-18 13:52:08 +00:00
|
|
|
|
# grep
|
|
|
|
|
|
|
|
|
|
> Поиск по шаблону в файлах используя регулярные выражения.
|
|
|
|
|
> Больше информации: <https://www.gnu.org/software/grep/manual/grep.html>.
|
|
|
|
|
|
|
|
|
|
- Искать в файле по шаблону:
|
|
|
|
|
|
|
|
|
|
`grep "{{шаблон_поиска}}" {{путь/к/файлу}}`
|
|
|
|
|
|
|
|
|
|
- Искать по заданной подстроке (регулярные выражения отключены):
|
|
|
|
|
|
|
|
|
|
`grep --fixed-strings "{{заданная_подстрока}}" {{путь/к/файлу}}`
|
|
|
|
|
|
|
|
|
|
- Искать по шаблону во всех файлах в директории рекурсивно, показывая номера строк, там где подстрока была найдена, исключая бинарные(двоичные) файлы:
|
|
|
|
|
|
|
|
|
|
`grep --recursive --line-number --binary-files={{without-match}} "{{шаблон_поиска}}" {{путь/к/директории}}`
|
|
|
|
|
|
|
|
|
|
- Искать, используя расширенные регулярные выражения (поддержка `?`, `+`, `{}`, `()` и `|`), без учета регистра:
|
|
|
|
|
|
|
|
|
|
`grep --extended-regexp --ignore-case "{{шаблон_поиска}}" {{путь/к/файлу}}`
|
|
|
|
|
|
|
|
|
|
- Вывести 3 строки содержимого, до или после каждого совпадения:
|
|
|
|
|
|
|
|
|
|
`grep --{{context|before-context|after-context}}={{3}} "{{шаблон_поиска}}" {{путь/к/файлу}}`
|
|
|
|
|
|
|
|
|
|
- Вывести имя файла и номер строки для каждого совпадения:
|
|
|
|
|
|
2023-12-29 09:16:53 +00:00
|
|
|
|
`grep --with-filename --line-number --color=always "{{шаблон_поиска}}" {{путь/к/файлу}}`
|
2022-01-18 13:52:08 +00:00
|
|
|
|
|
|
|
|
|
- Искать строки, где есть совпадение по шаблону поиска, вывод только совпадающей части текста:
|
|
|
|
|
|
|
|
|
|
`grep --only-matching "{{шаблон_поиска}}" {{путь/к/файлу}}`
|
|
|
|
|
|
|
|
|
|
- Искать строки в стандартном потоке ввода которые не совпадают с шаблоном поиска:
|
|
|
|
|
|
|
|
|
|
`cat {{путь/к/файлу}} | grep --invert-match "{{шаблон_поиска}}"`
|