Синтаксис
Grep [шаблон] [ім'я файлу]
Після використання grep з’являється шаблон. Шаблон передбачає спосіб, яким ми хочемо його використовувати для видалення зайвого місця в даних. Слідуючи шаблону, описується ім’я файлу, за допомогою якого виконується шаблон.
Обов’язкова умова
Щоб легко зрозуміти корисність grep, нам потрібно встановити Ubuntu у нашій системі. Надайте дані користувача, надавши ім’я користувача та пароль, щоб мати привілеї при доступі до програм Linux. Після входу в систему відкрийте програму та знайдіть термінал або застосуйте комбінацію клавіш ctrl + alt + T.
За допомогою ключового слова [: blank:]
Припустимо, у нас є файл з ім’ям bfile, що має текстове розширення. Ви можете створити файл у текстовому редакторі або за допомогою командного рядка в терміналі. Створити файл на терміналі, включаючи такі команди.
$ Echo “текст, який потрібно ввести у файл”> ім’я файлу.txtНемає необхідності створювати файл, якщо він уже присутній. Просто покажіть його, використовуючи додану команду:
$ echo ім'я файлу.txtТекст, написаний у цих файлах, містить пробіли між ними, як показано на малюнку нижче.
Ці порожні рядки можна видалити за допомогою порожньої команди, щоб ігнорувати порожні пробіли між словами або рядками.
$ egrep '^ [[: порожній]] * [^ [: порожній:] #]' bfile.txt
Після застосування запиту порожні пробіли між рядками буде видалено, а вихідні дані більше не будуть містити зайвого місця. Перше слово виділено, коли проміжки між останнім словом рядка та між першими словами наступного рядка видаляються. Ми також можемо застосувати умови до тієї ж команди grep, додавши цю порожню функцію, щоб видалити непотрібний простір у вихідних даних.
За допомогою [: space:]
Тут пояснюється ще один приклад ігнорування простору.
Не згадуючи розширення файлу, ми спочатку відобразимо наявний файл за допомогою команди.
$ cat файл20
Давайте подивимося, як видаляється зайвий простір за допомогою команди grep крім ключового слова [: space:]. Опція Grep -v допоможе надрукувати рядки, у яких бракує порожніх рядків, а також додатковий інтервал, який також міститься у формі абзацу.
$ grep -v '^ [[; пробіл:]] * $' файл20Ви побачите, що зайві рядки видаляються, а вихід виводиться у послідовному вигляді по лініях. Ось як методологія grep -v так корисна для досягнення необхідної мети.
Згадування розширень файлів обмежує функціональність grep лише для певних розширень файлів, тобто.e., .текст або .mp3. Коли ми виконуємо вирівнювання текстового файлу, ми беремо fileg.txt як зразок файлу. Спочатку ми відобразимо наявний у ньому текст за допомогою функції $ cat. Вихід такий:
Застосувавши команду, отримано наш вихідний файл. Тут ми можемо бачити дані без інтервалу між рядками, які послідовно записуються.
$ grep -v '^ [[: пробіл:]] * $' fileg.txt
Окрім довгих команд, ми також можемо використовувати короткі письмові команди в Linux та Unix, щоб реалізувати grep, що підтримує в ній скорочені символи.
$ grep '\ s' ім'я файлу.txtМи бачили, як результат отримується шляхом застосування команд із вводу. Тут ми дізнаємось, як вхідні дані підтримуються назад із вихідних даних.
$ grep '\ S' ім'я файлу.txt> tmp.txt && mv tmp.txt ім'я файлу.txtТут ми будемо використовувати тимчасовий текстовий файл із розширенням тексту, названого як tmp.
За допомогою ^ #
Як і інші описані приклади, ми застосуємо команду до текстового файлу за допомогою команди cat. Ми також можемо відображати текст за допомогою команди echo.
$ echo ім'я файлу.txtТекстовий файл містить 4 рядки, між ними пробіл. Ці пробіли легко видаляються за допомогою певної команди.
$ grep -Ev "^ # | ^ $" ім'я файлу
Регулярні розширені операції увімкне -E, що дозволяє всі регулярні вирази, особливо pipe. Труба використовується як необов’язкова умова “або” за будь-яким зразком.”^ #”. Це показує відповідність текстових рядків у файлі, що починається зі знака #. “^ $” Збігатиметься з усіма вільними пробілами в тексті або порожніми рядками.
Результат показує повне видалення зайвого пробілу між рядками, наявними у файлі даних. У цьому прикладі ми бачили, що в команді "^ #" стоїть першою, що означає, що текст відповідає першим. “^ $” З’являється після | оператора, тому вільний простір згодом підбирається.
За допомогою ^ $
Як і приклад, згаданий вище, ми отримаємо ті самі результати, оскільки команда майже однакова. Однак шаблон пишеться протилежним чином. Файл22.txt - це файл, який ми будемо використовувати для видалення пробілів.
$ grep -v '^ $ | ^ #' ім'я файлу
Застосовується та сама методологія, крім роботи з пріоритетом. Згідно з цією командою, спочатку звірятимуться вільні пробіли, а потім текстові файли. Вихід забезпечить послідовність рядків, видаливши зайві прогалини в них.
Інші прості команди
- Grep '^ ...' ім'я файлу.
- Греп.'Назва файлу
Обидва вони настільки прості і допомагають усунути прогалини в рядках тексту.
Висновок
Видалення марних прогалин у файлах за допомогою регулярних виразів є досить простим підходом для досягнення плавної послідовності даних та збереження узгодженості. Приклади детально пояснюються для покращення вашої інформації стосовно теми.