grep

Як використовувати Grep рекурсивно?

Як використовувати Grep рекурсивно?

Команда Grep використовується для пошуку тексту з файлів. Це універсальний шаблон, який викликає grep за допомогою -r. -R варіант пошуку файлів рекурсивно з підкаталогів, починаючи з поточного каталогу. Команда виконується з каталогу верхнього рівня. Наприклад / home / abc тощо. Grep - це інструмент для отримання залежностей при переході від одного хоста до іншого. Якщо ми не згадаємо каталог у команді, grep здійснить пошук поточного робочого каталогу. Щоб виконати grep рекурсивно, ми взяли три аргументи зі сторінки довідки grep.

$ Людина grep

-include використовується для точного збігу у файлі, який може бути файлами, що присутні в каталозі, або за замовчуванням. -r означає ім'я каталогу, як було описано раніше, якщо в команді не визначено жодного шляху, враховується поточний каталог. Це йде лише за символічним посиланням. -R повністю відрізняється від -r, оскільки читає всі файли, а не лише символічно визначені.

Синтаксис

Grep -R "шаблон" / шлях /

“Шлях” - це “шлях до каталогу”. А шаблон - це слово або рядок, які потрібно шукати.

Обов’язкова умова

Щоб зрозуміти рекурсивну функцію grep, потрібно мати операційну систему Linux. Після встановлення ви налаштуєте Linux, вказавши ім'я користувача та пароль. Після цього ви отримаєте привілеї на доступ до всіх програм у цій операційній системі.

Усі файли в Linux

Ця команда допоможе вам шукати всі імена файлів у каталогах вашої системи. Оскільки -l працює, надаючи лише імена файлів, -r допоможе шукати символічно всюди, де є потрібне слово, і з’явиться як вихід. Тоді як «Акса» - це слово, яке ми хочемо шукати. Ця команда не має жодного шляху до каталогу, тому що тут ми хочемо всі можливі імена файлів у системі. Якщо ми вказали шлях, то процес пошуку матиме обмеження.

$ grep -r -l “aqsa”

Простий приклад

Щоб зрозуміти дилему рекурсивності за допомогою контуру, ми представили простий приклад для керівництва користувачем. Як показано в команді нижче, «універсальний» - це слово, яке ми хочемо шукати. Після цього слова є каталог, в якому ми хочемо сортувати. Він показує як ім'я файлу з каталогом, так і весь текст усередині файлу. -r також показує двійкові файли.

$ grep -r універсальний / home / aqsayasin

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

Оскільки ми всі знайомі з функціональністю “*” в пошуковій системі. Це передбачає сортування у всіх файлах. Отже, команда відобразить відповідні дані з усіх файлів. Слово “будинок” слід шукати рекурсивно за допомогою оператора grep.

$ grep -r “будинок” *

Він відображає імена файлів і текст усередині, виділяючи шукане слово, вказуючи на те, що збіг існує. Тільки один текстовий файл містив це слово, яке відображається в результуючому рядку.

Греп рекурсивно для струни

На відміну від наведених вище прикладів, grep працює з рядком у конкретному каталозі. / etc / - це каталог команд, що означає, що пошук буде здійснюватися через цей каталог, IP-адресу комп'ютера. Її інформація зберігається в каталозі, маючи назви файлів, присутніх у каталозі / etc / ppp /. Варіант - назва певної папки. Ця команда прочитає всі файли у вказаному каталозі.

$ grep -r “192.168.1.5 ”/ і т.д. /

Імена файлу у вихідних даних можна придушити за допомогою опції-h. Команда така.

$ grep -h -R "192.168.1.5 "/ і т.д. /

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

Шукати рекурсивно без каталогу

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

$ grep -r дружина

Слово “дружина” шукається у всіх каталогах автоматично, тому що, коли немає згаданого каталогу, процес пошуку триватиме у всіх файлах та каталогах системи. Він також включатиме двійкові файли разом із текстовими файлами. Адреса та імена файлів відображаються спочатку. Тоді як текст усередині файлу відображається. Відображається не лише звичайний текст, а й команда grep, застосована до тексту файлу, тобто.e., grep 'Я домашня дружина'.

Grep Точні кілька шаблонів

Пошук кількох методів - це також функція, отримана за допомогою команди grep. “-Rw” використовується для вивчення конкретного збігу. “-E” використовується для додавання більше одного шаблону в команді. Шлях до каталогу згадується, щоб зробити систему зручною для пошуку. Двійкові файли виключаються, оскільки обмеження вводиться при додаванні каталогу в команді. Вихідні дані містять ім'я каталогу файлу та ім'я файлу. Також відображається текст усередині файлу.

$ grep -rw '/ home / aqsayasin /'

Шукані слова виділяються у тексті файлу. Обидва пошукові терміни повинні бути присутніми в одному файлі. Існує ймовірність існування слів у різних файлах, як показано у вихідних даних.

Grep рекурсивно, використовуючи - -Включити

“-Include” відповідає заданому шаблону файлу та ефективно працює, оскільки він також пришвидшує процес пошуку, який працює з більшістю файлів. Тут він не містить двійкових файлів, скомпільованих файлів чи файлів зображень. Розширення файлу використовується для додавання обмежень до команди. Каталог згадується для отримання необхідного виводу. Включене ключове слово є досить просунутим у grep порівняно з іншими функціоналами.

$ grep -r - -include = ”* txt” “сестра” / home / aqsayasin

Висновок

У цій статті ми пояснили кожен приклад, щоб продемонструвати використання рекурсивної функції grep. Рекурсивна функція використовується для пошуку з обмеженнями і точно у всіх каталогах системи. Якщо каталогу немає, поточний каталог вважається за замовчуванням.

How to Install and Play Doom on Linux
Introduction to Doom The Doom Series originated in the 90s after the release of the original Doom. It was an instant hit and from that time onwards th...
Vulkan for Linux Users
With each new generation of graphics cards, we see game developers push the limits of graphical fidelity and come one step closer to photorealism. But...
OpenTTD vs Simutrans
Creating your own transport simulation can be fun, relaxing and extremely enticing. That's why you need to make sure that you try out as many games as...