我正在尝试创建一个批处理文件,以读取文件夹中的所有文本文件并将内容输出到一个文件中。
我已经成功地将文件名读取到一个文件中,但是无法将每个文件的内容读取到一个文件中。
这是我必须将所有文件名输出到单个文件中的代码
@echo off
set path= "C:\FolderFullOfTextFiles"
cd %path%
for %%a in (*) do @echo %%a>> C:\SingleFile.txt
答案 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"