lote / bastão para copiar a pasta e o conteúdo de uma só vez

Estou escrevendo um script em lote que faz uma cópia. Quero criar um script para copiar uma pasta inteira. Quando quero copiar um único arquivo, faço isso

copy %~dp0file.txt file.txt 

Se eu tiver uma pasta com essa estrutura, existe um comando para copiar toda a pasta com seu conteúdo de uma só vez, preservando a estrutura exata.

mainfolder/
  file1.txt
  file2.txt
  insidefolder/
     file3.txt
     file4.txt 
     file5.txt

questionAnswers(5)

yourAnswerToTheQuestion