Problem

If you need to concatenate 100 text files in one folder. You don't know the file names and you want to do it automatically you can use windows command line.

Solution 1 Using Copy command for text files

  • Open Command Line
  • On keyboard press: WINDOWS + R
  • type cmd
  • Press Enter
  • Or in Start Menu write cmd and open cmd.exe
  • Go the your folder with

cd C:/folderWithTextFiles

  • Type

copy /b *.txt concatenatedFile.txt

In the folder: C:/folderWithTextFiles you will have file named concatenatedFile.txt which will have all the information concatenated ( from all files ending with txt)

Solution 2 Concatenate CSV files

  • Open Command Line(check Solution 1 how to open it)
  • Go the your folder with

cd C:/folderWithTextFiles

  • Type

copy /b *.csv concatenatedFile.csv

Solution 3 Use type command

  • Open Command Line(check Solution 1 how to open it)
  • Go the your folder with

cd C:/folderWithTextFiles

  • Type

type *.txt > concatenatedFile.txt

Solution 4 Concatenate with loop

  • Open Command Line(check Solution 1 how to open it)
  • Go the your folder with

cd C:/folderWithTextFiles

  • Type

for %x in (*.txt) do copy /b *.txt concatenatedFile.txt

Solution 5 Concatenate without N first lines(headers)

If the files have headers and you want to skip them then or you need to start concatenation from line n than you can do:

  • go to the folder with the text files
  • create folder out
  • Type the command

for %x in (*.txt) do more +2 %x > out/%x

  • command below will start from line 2
  • for each text file it will create text file in folder out which will be the text starting from line 2
  • go to folder out with:

cd out

  • Do concatenation from Solution 1

Note

If you you concatenated the information in a text file and then you want to concatenate it again in another file you can have duplication. So you can change the output file type to .log, .tmp and so on.

type *.txt > concatenatedFile.log

Or simply delete the output file at every execution.