Я объединяю (объединяю) много текстовых файлов в один, но у меня проблема в том, что у них нет новой строки в конце текста.

Есть ли способ добавить новую строку ко всем файлам, используя команду Windows или командный файл?

Я использую cmd.exe из Windows Vista.

2 ответа2

3

Вы можете объединять файлы, используя COPY

Например, файлы: data1.txt и data2.txt можно объединить следующим образом:

copy data1.txt + data2.txt dataFull.txt

и результат будет в dataFull.txt. Если вы не укажете пункт назначения, все будет в первом указанном файле.

Для обеспечения новой строки самым простым, хотя и не самым элегантным способом является создание файла newline.txt, который представляет собой просто пустую строку и включает его после каждого файла:

copy data1.txt + newline.txt + data2.txt dataFull.txt

Было бы довольно просто включить это дополнение в циклическую структуру.

3

Вы можете запустить это как командный файл

del merged.txt

for %%I in (*.txt) do (
    echo %%~fI >> merged.tmp
    echo ------------- >> merged.tmp
    type "%%I" >> merged.tmp
    echo. >> merged.tmp
    echo. >> merged.tmp
)

ren merged.tmp merged.txt

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

echo %%~fI отображает полное имя пути, для других опций вы можете обратиться

help for

Кроме этого, если результат не так , как вы хотите, probaby все , что нужно просто изменить то , что это echo -ed

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