Удалите пустые строки из текстового файла

Я пытаюсь удалить все пустые строки в текстовом файле. Существует ли быстрый способ сделать это?

Что я имею

line one

line two

Что я хочу

line one
line two

Я использую Блокнот ++, таким образом, решение с помощью Блокнота ++ ценится.

У меня есть Cygwin также, поэтому если ничто иное, сценарий прекрасен.

4
задан 16.02.2014, 08:58

4 ответа

Используйте меню:

1) Выберите весь текст (Ctrl-A)

2) TextFX-> Редактирование TextFX-> Удаляют Пустые строки

18
ответ дан 07.12.2019, 19:05

Макрос может быть страшной, случайной потерей первые символы если от строки..

  • Представление> Выставочные Символы> Выставочный Конец Строки

Обратите внимание, которое это заканчивает в CR LF (Это - Возврат каретки и Перевод строки, который является \r\n), Ctrl+H затем включают расширенную замену "\r\n\r\n" с "\r\n"

Это циклически повторится через и удалит двойной интервал, Вы, возможно, должны были бы повториться если его больше, чем просто двойной интервал. (Другая вещь рассмотреть: Редактирование> Конечный пробел Для обрезки.)

3
ответ дан 07.12.2019, 19:05

Переключитесь на Расширенный режим поиска в диалоговом окне Замены.

Найдите что: \r\n\r\n

Замена: \r\n

Нажмите Replace All. Всех пустых строк не стало.

2
ответ дан 07.12.2019, 19:05
  • 1
    Это действительно сильно зависит от строки конечный формат, используемый в файле. – Manuel Faux 04.09.2009, 00:24
  • 2
    или \n\n к \n для *отклоняют – pelms 04.09.2009, 00:51

В Cygwin:

$ sed -i '/^$/d' <name_of_your_textfile.txt>

Или, если "пустым строкам" позволяют содержать вкладки и пробелы:

$ sed -i '/^[ \t]*$/d' <name_of_your_textfile.txt>

-i обозначает "редактирование на месте", поэтому если Ваши текстовые файлы ценны, Вы могли бы хотеть использовать команды без -i и передайте вывод по каналу в другой файл, посмотрите на результаты и затем переименуйте его.

Используя Vim (должен идти с Cygwin, но существует также собственная версия Windows):

:%g/^[ \t]*$/d

Это имеет преимущество, что Вы непосредственно видите свои результаты и можете отменить их путем нажатия "u". Вы также могли бы встретиться, меньше проблем с окончаниями строки Windows (зависит от Вашей конфигурации Cygwin).

0
ответ дан 07.12.2019, 19:05

Теги

Похожие вопросы