在多个文本文件末尾添加新行的任何方法

在多个文本文件末尾添加新行的任何方法

我正在将多个文本文件合并(连接)为一个,但我遇到的问题是它们在文本末尾没有换行符。

有没有办法使用 Windows 命令或批处理文件将新行附加到所有文件?

我正在使用cmd.exeWindows Vista。

答案1

您可以将其作为批处理文件运行

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

这样您就不必指定名称,但所有文件必须位于同一个文件夹中。

echoecho %%~fI完整路径名,其他选项可以参考

help for

除此之外,如果结果不完全符合你的要求,你只需要echo改变

答案2

您可以使用 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

将此添加包含到循环结构中是相当简单的。

相关内容