grep

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

Как игнорировать пустые строки в Grep?
Grep означает Печать глобального регулярного выражения. Он имеет много функций, я.е., поиск в файле, поиск только по именам файла, рекурсивный поиск grep и т. д. Grep считается мощной командой в поисковом секторе. Во многих случаях мы сталкиваемся с ситуациями, когда нам не нужны пробелы или необходимо удалить нежелательные пробелы в наших данных. Один из самых интересных способов использования grep - игнорировать или удалять пустые строки из текстового файла. Эта процедура выполняется на разных примерах. Это операция редактирования файла. Для достижения этой цели нам необходимо иметь существующие файлы в нашей системе. С помощью команды grep мы разрешаем ему печатать данные без пустых строк.

Синтаксис

Grep [шаблон] [имя файла]

После использования grep появляется шаблон. Шаблон подразумевает то, как мы хотим использовать его для удаления лишнего места в данных. Следуя шаблону, описывается имя файла, через которое шаблон выполняется.

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

Чтобы понять полезность grep, нам нужно, чтобы в нашей системе был установлен Ubuntu. Предоставьте сведения о пользователе, указав имя пользователя и пароль для доступа к приложениям Linux. После входа в систему откройте приложение и найдите терминал или примените сочетание клавиш ctrl + alt + T.

Используя [: blank:] ключевое слово

Предположим, у нас есть файл с именем bfile с текстовым расширением. Вы можете создать файл либо в текстовом редакторе, либо с помощью командной строки в терминале. Чтобы создать файл на терминале, включая следующие команды.

$ Echo «текст для ввода в файл»> имя файла.текст

Нет необходимости создавать файл, если он уже есть. Просто отобразите его, используя добавленную команду:

$ echo имя файла.текст

Текст, записанный в этих файлах, содержит пробелы между ними, как показано на рисунке ниже.

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

$ egrep '^ [[: blank]] * [^ [: blank:] #]' b-файл.текст

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

Используя [: space:]

Здесь объясняется еще один пример игнорирования пробела.

Не упоминая расширение файла, мы сначала отобразим существующий файл с помощью команды.

$ cat file20

Давайте посмотрим, как удаляется лишнее пространство с помощью команды grep помимо ключевого слова [: space:]. Опция Grep -v поможет печатать строки без пустых строк и лишних интервалов, которые также включены в форму абзаца.

$ grep -v '^ [[; пробел:]] * $' файл20

Вы увидите, что лишние строки удалены, а вывод идет в упорядоченной форме по строкам. Вот почему методология grep -v так помогает в достижении требуемой цели.

Упоминание расширений файлов ограничивает функциональность grep только для определенных расширений файлов, я.е., .текст или .mp3. Выполняя выравнивание текстового файла, мы возьмем fileg.txt в качестве образца файла. Сначала мы отобразим присутствующий в нем текст с помощью функции $ cat. Результат следующий:

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

$ grep -v '^ [[: пробел:]] * $' файлg.текст

Помимо длинных команд, мы также можем использовать короткие письменные команды в Linux и Unix для реализации grep, поддерживающего в нем сокращенные символы.

$ grep '\ s' имя файла.текст

Мы видели, как получается результат, применяя команды из входа. Здесь мы узнаем, как ввод сохраняется обратно из вывода.

$ grep '\ S' имя файла.txt> tmp.txt && mv tmp.txt имя файла.текст

Здесь мы будем использовать временный текстовый файл с расширением текста с именем tmp.

Используя ^ #

Как и в других описанных примерах, мы применим команду к текстовому файлу с помощью команды cat. Мы также можем отображать текст с помощью команды echo.

$ echo имя файла.текст

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

$ grep -Ev "^ # | ^ $" имя файла

Регулярные расширенные операции включаются -E, что позволяет использовать все регулярные выражения, особенно конвейер. Канал используется как необязательное условие «или» в любом шаблоне.”^ #”. Это показывает соответствие текстовых строк в файле, который начинается со знака #. «^ $» Будет соответствовать всем свободным пробелам в тексте или пустым строкам.

Вывод показывает полное удаление лишнего пробела между строками, присутствующими в файле данных. В этом примере мы видели, что в команде сначала идет «^ #», что означает, что текст сопоставляется первым. «^ $» Идет после | оператор, поэтому свободное пространство будет сопоставлено позже.

Используя ^ $

Как и в примере, упомянутом выше, мы получим те же результаты, потому что команда почти такая же. Однако паттерн написан наоборот. Файл22.txt - это файл, который мы собираемся использовать для удаления пробелов.

$ grep -v '^ $ | ^ #' имя файла

Применяется та же методика, за исключением работы с приоритетом. Согласно этой команде, сначала будут сопоставлены свободные места, затем сопоставлены текстовые файлы. На выходе будет последовательность строк, удалив в них лишние пробелы.

Другие простые команды

Они оба настолько просты и помогают устранить пробелы в текстовых строках.

Заключение

Удаление бесполезных пробелов в файлах с помощью регулярных выражений - довольно простой способ добиться плавной последовательности данных и поддерживать согласованность. Примеры подробно объяснены, чтобы улучшить вашу информацию по теме.

Лучшие игры с отслеживанием рук
Oculus Quest недавно представил отличную идею отслеживания рук без контроллеров. С постоянно растущим числом игр и действий, которые осуществляются фо...
Как показать наложение OSD в полноэкранных приложениях и играх Linux
Игра в полноэкранные игры или использование приложений в полноэкранном режиме без отвлекающих факторов может отрезать вас от соответствующей системной...
Топ-5 карт для захвата игр
Все мы видели и любили потоковые игры на YouTube. PewDiePie, Jakesepticye и Markiplier - лишь некоторые из лучших игроков, которые заработали миллионы...