Пустые строки не всегда желательны, и вы можете почувствовать необходимость их удалить и оставить только те строки, которые содержат текст. Linux предлагает несколько выражений манипулирования текстом, которые вы можете использовать для опускания или удаления пустых строк. Давайте рассмотрим некоторые инструменты командной строки, которые вы можете использовать для удаления пустых строк в текстовом файле.
Мы использовали CentOS 8 в демонстрационных целях.
Grep — один из самых мощных и универсальных инструментов, который может помочь вам удалить ненужные пустые строки в ваших текстовых файлах. Обычно команда grep используется для проверки строк или шаблонов символов в текстовом файле, но, как вы вскоре увидите, она также может помочь вам избавиться от нежелательных пустых строк.
При использовании с параметром -v команда grep помогает удалить пустые строки. Ниже представлен образец текстового файла sample.txt с альтернативными непустыми и пустыми строками.
Чтобы удалить или удалить все пустые строки в образце текстового файла, используйте команду grep, как показано.
$ grep -v '^[[:space:]]*$' sample.txt
Кроме того, вы можете использовать следующий синтаксис.
$ grep -v ‘^$’ sample.txt
Более того, вы можете сохранить или перенаправить вывод в другой файл, используя, например, оператор «больше» (>).
$ grep -v ‘^$’ sample.txt > output.txt
Сокращенная как редактор потока, команда sed в Linux — популярный инструмент, который выполняет широкий спектр функций, включая замену строк в файле.
Более того, вы также можете использовать sed для удаления пустых строк в файле, как показано ниже.
$ sed ‘/^$/d’ sample.txt
Наконец, у нас есть команда awk. Это еще один инструмент командной строки для управления текстовыми сообщениями, который также может избавиться от пустых строк. Чтобы удалить пустой файл с помощью awk, выполните команду ниже.
$ awk ‘{if(NF>0) {print $0}}’ sample.txt
Мы предоставили 3 способа, которые могут быть полезны для удаления пустых строк в текстовых файлах. Есть ли другие идеи о том, как удалить эти ненужные пустые строки? Не стесняйтесь связаться с нами в разделе комментариев.