Windows 合并多个文件

Windows 合并多个文件,windows,Windows,我没有编程经验,但想做以下工作: 我想能够选择什么文件,我要合并从多达十个文件夹。一旦做出选择…比方说a、b和d,程序将从文件夹1-10合并a、b和d,然后将十个文件夹的输出合并到一个文件中 这可能吗?最好的编程方式是什么 文件夹1 文件A-合并 文件B-合并 文件C 文件D-合并 文件夹2 文件A-合并 文件B-合并 文件C 文件D-合并 文件夹3 文件A-合并 文件B-合并 文件C 文件D-合并 文件夹4 文件A-合并 文件B-合并 文件C 文件D-合并 文件夹10 归档 文件B 文件C 文

我没有编程经验,但想做以下工作:

我想能够选择什么文件,我要合并从多达十个文件夹。一旦做出选择…比方说a、b和d,程序将从文件夹1-10合并a、b和d,然后将十个文件夹的输出合并到一个文件中

这可能吗?最好的编程方式是什么

文件夹1

文件A-合并 文件B-合并 文件C 文件D-合并

文件夹2

文件A-合并 文件B-合并 文件C 文件D-合并

文件夹3

文件A-合并 文件B-合并 文件C 文件D-合并

文件夹4

文件A-合并 文件B-合并 文件C 文件D-合并

文件夹10

归档 文件B 文件C
文件D

您可以在Windows>>中从命令行使用append操作符,只需列出所有要合并的文件,如下所示

Folder1\fileA.txt >> Folder10\merge.txt
Folder2\fileB.txt >> Folder10\merge.txt
Folder2\fileC.txt >> Folder10\merge.txt
Folder3\fileA.txt >> Folder10\merge.txt
如果您希望一个批处理程序向用户请求文件,然后将其合并到某个位置,您可以这样做

:while1
    SET /P file=Please enter file name
    if NOT (%file%) == () (
        echo %file%
        %file% >> Folder10\merge.txt
        goto :while1
    )
通常,如果您有文件操作任务,脚本语言(如batch、perl或powershell)比编程语言更合适。如果您打算在Windows中做一些非常简单的事情,那么batch通常可以完成这项工作,否则我建议使用perl或powershell


如果您确实没有编程经验,那么我建议您阅读一些powershell教程,并花一些时间学习该语言。如果这对您来说是一项太多的初始投资,那么我建议您像开始时那样将append命令输入到.bat文件中,并运行一次。这可能比尝试编写和调试第一个脚本要快。

这就是您想要做的事情吗?:

@Echo OFF

:: By Elektro H@cker

Set "folder=C:\Users\Administrador\Desktop\Test"

Echo Selected Folder: "%FOLDER%"
Set /P "files=Select files to merge (Example: "File1.txt" "File2.txt" "File3.txt") >> "


For %%@ in (%files%) Do (
    For /R "%FOLDER%" %%# in (*) DO (
        IF /I "%%@" EQU "%%~nx#" (call Set "Files_to_merge=%%Files_to_merge%% "%%#"+")
        )
    )
)


Copy /A %Files_to_merge:~0,-1% ".\output_file.txt"
pause&Exit
PS:请记住更改复制命令的格式,/A用于文本文件,/B用于二进制文件

CMD输出:

输出_file.txt内容:


您将合并哪些文件格式?bat是否可以为合并提供操作员输入?bat是否可以询问…您希望合并哪些文件…然后操作员可以选择a、b和d?
>Selected Folder: "C:\Users\Administrador\Desktop\Test"
>Select files to merge (Example: "File1.txt" "File2.txt" "File3.txt") >>

>file1.txt file2.txt file3.txt

C:\Users\Administrador\Desktop\Test\file1.txt
C:\Users\Administrador\Desktop\Test\Nueva carpeta\file1.txt
C:\Users\Administrador\Desktop\Test\file2.txt
C:\Users\Administrador\Desktop\Test\Nueva carpeta\file2.txt
C:\Users\Administrador\Desktop\Test\file3.txt
C:\Users\Administrador\Desktop\Test\Nueva carpeta\file3.txt
        1 file(s) copied(s).

Presione una tecla para continuar . . .
Content of "File1.txt" in first dir

Content of "File1.txt" in firstsub-dir

Content of "File2.txt" in first dir

Content of "File2.txt" in firstsub-dir

Content of "File3.txt" in first dir

Content of "File3.txt" in firstsub-dir