6

В txt-файлах есть ненужные новые строки, которые я объединяю во время пакетной обработки. Я думаю сначала удалить все новые строки, а затем вставить только одну.

как я могу сделать это в командном файле

3 ответа3

9

Вы можете сделать то же самое, что и ответ Idigas (фильтрация непустых строк), используя встроенный в Windows инструмент findstr:

findstr "." input.txt > output.txt
1

Я не знаю, как сделать это с помощью cmd, так как я всегда делал это с помощью grep. grep является частью unixkit-tiny, раритетного архива небольших инструментов, которые появились в Windows как порт из мира unix. Просто распакуйте и используйте, установка не требуется.

Удаление строк:

grep . your_file.txt > your_file_without_empty_lines.txt

(это скопирует все непустые строки из your_file.txt в новый файл - строки, в которых есть только пробелы, не считаются пустыми)

-1

Вы можете попробовать PowerShell (только потому, что он займет меньше строк).
Прочитайте каждую строку в файле и запишите ее в другой файл, если только он не содержит только символ новой строки. Таким образом, вы копируете каждую строку с 1 символом новой строки - именно то, что вам нужно.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .