From the command prompt:
You can use the copy command with the + character to concatenate multiple files:
copy file1.txt + file2.txt save.txt.
To concatenate all files in a directory use the for command in combination with dir /b (/b means bare format, only files names)
for /f %f in ('dir *.* /b') do @type %f>>save.txt
Or recursively, using /s for directory and all subdirectories in combination with /a:-d to exclude directories in the output.
for /f %f in ('dir *.* /b /s /a:-d') do @type %f>>save.txt
Using PowerShell:
Concatenate list of files:
Get-Content .\file1.txt,.\file2.txt | Out-File Save.txt
Concatenate all files in a directory:
(Get-ChildItem -File | ForEach-Object { Get-Content $_ } ) | out-file save.txt
Concatenate all files recursively:
(Get-ChildItem -File -Recurse | ForEach-Object { Get-Content $_.FullName } ) | out-file save.txt
Note: for binary files you may want to add the /b switch to the copy command or if using PowerShell add -Raw to Get-Content