使用.bat文件将当前文件夹和所有子文件夹中的所有文件合并到一个文件中

时间:2014-05-16 16:40:08

标签: windows file batch-file merge directory

我正在寻找一个批处理文件,它合并当前目录中所有文件的内容和所有子目录中的文件。 此外,如果文件被大文件中的几个新行分隔,并且可能包含每个文件内容上方带有filepath的文件名,那将是完美的。

例如,当前文件夹 D: \中有两个文件,我们的批处理文件位于:

1。 d:\ file1.txt 包含:

some
text here
hahaha

2。 d:\ folderabc \ file2.mp3 包含:

doremi text

我在d:\上运行merge.bat文件,它会创建一个包含此类内容的合并文件result.txt(或任何扩展名):

=========d:\file1.txt=========
some
text here
hahaha



=========d:\folderabc\file2.mp3=========
doremi

如果有人为这个问题分享他的解决方案,我感激不尽。

非常感谢你。

1 个答案:

答案 0 :(得分:1)

使用您的文件夹测试。它假定文件是文本文件。

编辑:这有一个修复 - 您可以删除"d:\base\folder"以从当前目录运行它。

@echo off
for /r "d:\base\folder" %%a in (*) do (
   (
    echo =========%%a=========
    type "%%a"
    echo(
    echo(
    echo(
   )>>"%temp%\temp.file"
)
move "%temp%\temp.file" . >nul
echo done
pause