grep

Як я можу виключити каталоги з grep -R?

Як я можу виключити каталоги з grep -R?
Grep - це справді утиліта оболонки терміналу Linux / Unix, яка шукає в документі послідовність символів. Регулярний вираз, здається, є терміном для текстового шаблону, який потрібно шукати. Він виводить рядок із результатом, коли виявляє той самий збіг. Під час перегляду величезних файлів журналу запит grep стає в нагоді. Отже, grep -R був використаний для виключення каталогів при використанні деяких ключових слів. Давайте обговоримо grep -R у цьому посібнику поетапно.

Передумови:

Поясніть, щоб будь-який дистрибутив Linux був встановлений і налаштований. Ми використовуємо Ubuntu 20.04 Система Linux для реалізації цієї теми. З іншого боку, ви також повинні мати права користувача root. Відкрийте свій командний термінал, щоб почати працювати.

Приклад 01:

Коли ви відкриваєте командний термінал, ви перебуваєте в Ubuntu 20.04 Домашній каталог системи Linux. Давайте перейдемо до каталогу документів. Для цього вам потрібно використовувати вказану нижче команду “cd” у командній оболонці, а також шлях до каталогу.

$ cd ~ / Документи

Тепер ви знаходитесь у каталозі Документи вашої системи Linux. Давайте створимо три нові файли в каталозі Документи. Щоб створити нові файли текстового типу, спробуйте наведену нижче команду в оболонці, а потім ім’я нового файлу. Ви бачите, що ми створили три файли з назвою „один.txt, "" новий.txt "і" тест.txt."

$ торкніться одного.txt
$ touch новий.txt
$ сенсорний тест.txt

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

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

$ ls

Тепер наша черга спробувати команду grep -R у каталозі «Документи» та його файлах або папках. Ми будемо використовувати команду grep -R, щоб виключити каталоги, використовуючи одне ключове слово або унікальне слово. У нас буде команда, яка буде шукати це конкретне слово з усіх файлів, що знаходяться в папці «Документи», за винятком одного каталогу, який було видалено в команді. Отже, ми збираємось виключити каталог “Wao”, який зараз присутній у каталозі Documents. Отже, спробуйте наведену нижче команду grep, щоб виключити каталог “Wao” разом із прапором -R, який використовувався для рекурсивної функції, а “Aqsa” було використано як ключове слово для пошуку у файлах. Вихідні дані на знімку нижче показують текст із двох файлів, “test.txt »та« новий.txt », у тексті яких« Aqsa »та каталог« Wao »не перевірено через виключення в команді. Однак у каталозі “Wao” також є деякі текстові файли, які не потрібно перевіряти.

$ grep -exclude-dir “Wao” -R “Aqsa”

Давайте розглянемо обидва файли. Спробуйте команду cat, щоб побачити файл "новий.txt »містить ключове слово« Aqsa."

$ кішка нова.txt

Інший файл, “test.txt ", що містить ключове слово" Aqsa ", було відображено за допомогою команди cat нижче.

$ тест на котів.txt

Тепер виключимо той самий каталог “Wao” із папки “Документи”, використовуючи інше ключове слово “хоробрий”, якщо воно знаходиться у будь-яких файлах. Отже, спробуйте наведену нижче команду grep, щоб виключити каталог, як показано нижче. Вихідне зображення показує два відповідних виходи для ключового слова “хоробрий” у двох файлах “тест”.txt »та« один.txt."

$ grep -exclude-dir “Documents / Wao” -R “сміливий."

Ви можете побачити файл “один.txt »містить ключове слово« хоробрий »за допомогою команди cat.

$ кішка одна.txt

Вихідні дані показують файл “test.txt ", що містить ключове слово" хоробрий "із використанням інструкцій кота.

$ тест на котів.txt

Приклад 02:

Перейдемо до підкаталогу “Wao” папки “Документи”, використовуючи команду “cd” в оболонці.

$ cd ~ / Документи / Wao

Давайте створимо три нові файли, “bin.txt, "" мав.txt "та" сек.txt »у каталозі« Wao »під час використання сенсорної команди, перерахованої нижче. Додайте деякі текстові дані до всіх файлів, збережіть і закрийте їх.

$ сенсорний смітник.txt
$ touch мав.txt
$ дотик сек.txt

Давайте перелічимо всі каталоги за допомогою команди “ls”, як показано нижче. У ньому ви знайдете всі три нещодавно створені файли.

$ ls -a

Давайте спробуємо ту саму інструкцію grep у вашому командному терміналі, щоб виключити каталог “Wao”, використовуючи інше ключове слово “I” як відповідність, як показано нижче.

$ grep -exclude-dir “Documents / Wao /” -R “I”

Тепер вихідні дані для цієї команди показують ключове слово "I" у файлах, що зберігаються в папці Documents, тоді як каталог "Wao" ігнорується за допомогою ключового слова "exclude-dir".

Тепер виключимо той самий каталог “Wao”, використовуючи інше ключове слово “rimsha”, із команди grep, показаної нижче в терміналі. Вихідна прив'язка не відображає жодних вихідних даних, оскільки ключове слово “Rimsha” не знайдено в жодному з файлів, розташованих у папці Documents.

$ grep -exclude-dir “Документи / Wao” -R “rimsha”

Приклад 03:

Давайте спершу перейдемо до папки «Документи», використовуючи команду «cd», як показано нижче.

$ cd ~ / Документи

Давайте перелічимо всі файли та папки «Документи», використовуючи команду «ls» нижче. Вихідні дані показують деякі текстові та інші файли, а також один підкаталог «Wao."

$ ls

Давайте використаємо ту саму команду grep, щоб виключити каталог “Wao” з цієї папки, використовуючи ключове слово “Aqsa” у прапорі. Вихідні дані показують чотири текстові файли, у яких у тексті є слово “Aqsa”, тоді як каталог “Wao” було уникнуто та не перевірено.

$ grep -exclude-dir “Wao” -R “Aqsa”

Висновок:

Використання Ubuntu 20.04, ми вже розуміємо, як і коли використовувати команду grep -R. Команда grep надзвичайно універсальна і допомагає знаходити текст, вбудований у сотні документів.

Топ 5 ергономічних продуктів для комп'ютерної миші для Linux
Чи викликає тривале використання комп’ютера біль у зап’ясті або пальцях? Ви страждаєте від ригідності суглобів і вам постійно доводиться трясти руки? ...
How to Change Mouse and Touchpad Settings Using Xinput in Linux
Most Linux distributions ship with “libinput” library by default to handle input events on a system. It can process input events on both Wayland and X...
Remap your mouse buttons differently for different software with X-Mouse Button Control
Maybe you need a tool that could make your mouse's control change with every application that you use. If this is the case, you can try out an applica...