Синтаксис
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 '^ $ | ^ #' имя файла
Применяется та же методика, за исключением работы с приоритетом. Согласно этой команде, сначала будут сопоставлены свободные места, затем сопоставлены текстовые файлы. На выходе будет последовательность строк, удалив в них лишние пробелы.
Другие простые команды
- Grep '^…' имя файла.
- Grep '.' Имя файла
Они оба настолько просты и помогают устранить пробелы в текстовых строках.
Заключение
Удаление бесполезных пробелов в файлах с помощью регулярных выражений - довольно простой способ добиться плавной последовательности данных и поддерживать согласованность. Примеры подробно объяснены, чтобы улучшить вашу информацию по теме.