批处理文件,将所有文件内容读入单个文件

时间:2018-07-24 14:27:34

标签: batch-file

我正在尝试创建一个批处理文件,以读取文件夹中的所有文本文件并将内容输出到一个文件中。

我已经成功地将文件名读取到一个文件中,但是无法将每个文件的内容读取到一个文件中。

这是我必须将所有文件名输出到单个文件中的代码

@echo off

set path= "C:\FolderFullOfTextFiles"
cd %path%

for %%a in (*) do @echo %%a>> C:\SingleFile.txt

1 个答案:

答案 0 :(得分:0)

设置变量的推荐方法是:

Set "VariableName=VariableValue"

也不建议Set一个与内置重要系统变量%path%相同的变量。

要输出文本文件的内容,可以使用Type命令。

因此,您的代码应更像这样:

@echo off

set "pth=C:\FolderFullOfTextFiles"
cd /d "%pth%"

for %%a in (*.txt) do type "%%a">>"C:\SingleFile.txt"

但是,Type命令应该能够通过使用通配符For直接执行任务而无需进行*循环:

@Type "C:\FolderFullOfTextFiles\*.txt">"C:\SingleFile.txt"

同样,Copy命令也可以:

@Copy /Y /A "C:\FolderFullOfTextFiles\*.txt" "C:\SingleFile.txt"