Как использовать Grep рекурсивно?

How Use Grep Recursively



Команда Grep используется для поиска текста в файлах. Это универсальный шаблон, который вызывает команду grep с параметром –r. Параметр –R рекурсивно ищет файлы из подкаталогов, начиная с текущего каталога. Команда запускается из каталога верхнего уровня. Например, / home / abc и т. Д. Grep - это инструмент для получения зависимостей при переходе с одного хоста на другой. Если мы не укажем каталог в команде, grep будет искать в текущем рабочем каталоге. Для рекурсивного выполнения grep есть три аргумента, которые мы взяли из справочной страницы grep.

$мужчинарукоятка







–Include используется для точного совпадения в файле, которое может быть файлами, которые присутствуют в каталоге, или по умолчанию. –R подразумевает имя каталога, как описано ранее, если в команде не указан путь, рассматривается текущий каталог. Он следует только по символической ссылке. –R сильно отличается от –r, потому что он читает все файлы, а не только символически определенные.



Синтаксис

Захват –R рисунок/дорожка/

Путь - это путь к каталогу. А шаблон - это слово или строка, которую вы хотите найти.



Предварительное условие

Чтобы понять рекурсивную функцию grep, у вас должна быть операционная система Linux. После установки вы настроите Linux, указав имя пользователя и пароль. После этого вы получите права доступа ко всем приложениям в этой операционной системе.





Все файлы в Linux

Эта команда поможет вам найти все имена файлов в каталогах вашей системы. Поскольку –l работает только с именами файлов, –r поможет выполнять символический поиск везде, где присутствует требуемое слово, будет выводиться. В то время как Aqsa - это слово, которое мы хотим найти. У этой команды нет пути к каталогу, потому что здесь нам нужны все возможные имена файлов в системе. Если мы указали путь, то процесс поиска будет иметь ограничения.

$рукоятка–R –l aqsa



Простой пример

Чтобы понять дилемму рекурсивности с помощью пути, мы представили простой пример, который поможет пользователю. Как показано в приведенной ниже команде, универсальный - это слово, которое мы хотим найти. После слова идет каталог, в котором мы хотим выполнить сортировку. Он показывает как имя файла с каталогом, так и весь текст внутри файла. –R также показывает двоичные файлы.

$рукоятка–R универсальный/дом/Аксаясин

Рекурсивный поиск во всех каталогах и подкаталогах

Поскольку все мы знакомы с функционалом * в поисковой системе. Подразумевает сортировку по всем файлам. Итак, команда отобразит соответствующие данные из всех файлов. Домашнее слово нужно искать рекурсивно с помощью оператора grep.

$рукоятка–R дом*

Он показывает имена файлов и текст внутри путем выделения искомого слова, указывая на то, что совпадение существует. Только один текстовый файл содержал это слово, которое отображается в результирующей строке.

Рекурсивно Grep для строки

В отличие от приведенных выше примеров, grep работает со строкой в ​​определенном каталоге. / etc / - это каталог команд, который означает, что поиск будет осуществляться через этот каталог, IP-адрес компьютера. Его информация сохраняется в каталоге с именами файлов, находящихся в каталоге / etc / ppp /. Параметр - это имя конкретной папки. Эта команда прочитает все файлы в данном каталоге.

$рукоятка–R 192.168.1.5/так далее/

Имена файлов в выводе могут быть подавлены с помощью опции –h. Команда выглядит следующим образом.

$рукоятка -час '192.168.1.5' /так далее/

Оба разделителя можно записать в команде как -h -R.

Рекурсивный поиск без каталога

Рекурсивный поиск также можно выполнить без использования каталога, просто выполнив поиск слова с помощью одного слова.

$рукоятка–R жена

Слово «жена» ищется во всех каталогах автоматически, потому что, когда каталог не указан, процесс поиска будет продолжаться во всех файлах и каталогах системы. Он также будет включать двоичные файлы вместе с текстовыми файлами. Сначала отображаются адрес и имена файлов. В то время как текст внутри файла отображается. Отображается не только обычный текст, но и команда grep, примененная к тексту файла, то есть grep «Я - домашняя жена».

Grep Exact Multiple Patterns

Поиск по нескольким методам также можно получить с помощью команды grep. -rw используется для изучения конкретного совпадения. -e используется для добавления более одного шаблона в команду. Путь к каталогу указан для удобства поиска в системе. Двоичные файлы исключаются, поскольку ограничение вводится при добавлении каталога в команду. Вывод содержит имя каталога файла и имя файла. Также отображается текст внутри файла.

$рукоятка–Rw ‘/дом/Аксаясин/'

Искомые слова выделяются в тексте файла. Оба искомых термина должны присутствовать в одном файле. Существует вероятность наличия слов в разных файлах, как показано в выводе.

Рекурсивно с использованием Grep - -Include

—Include соответствует заданному шаблону файла и работает эффективно, так как также ускоряет процесс поиска, который работает с большинством файлов. Здесь он не содержит двоичных или скомпилированных файлов или файлов изображений. Расширение файла используется для добавления ограничений к команде. Каталог упоминается для получения требуемого вывода. Ключевое слово included в grep значительно продвинуто по сравнению с другими функциями.

$рукоятка-р --включаютзнак равно*txt сестра/дом/Аксаясин

Заключение

В этой статье мы объяснили каждый пример, чтобы продемонстрировать использование рекурсивной функции grep. Рекурсивная функция используется для поиска с ограничениями и точно во всех каталогах в системе. Если каталог отсутствует, по умолчанию считается текущий каталог.