Using xcopy to copy files from several directories to one directory

Oddleif picture Oddleif · Feb 25, 2009 · Viewed 66.2k times · Source

Is it possible to use xcopy to copy files from several directories into one directory using only one xcopy command?

Assuming that I have the directory tree

root\Source\Sub1\Sub2

I want to copy all .xml files from the directory root\Source including sub folder to root\Destination. I don't want to copy the folder structure, just the files.

Answer

kokeksibir picture kokeksibir · Feb 25, 2009

As DandDI said, you don't need xcopy. for statement helps much. However, you don't need to state process outcome of dir command as well, this command helps better

for /R c:\source %f in (*.xml) do copy "%f" x:\destination\

By the way, when you use it from a batch file, you need to add spare % in front of variable %f hence your command line should be;

for /R c:\source %%f in (*.xml) do copy %%f x:\destination\

when you use it within a batch

  • Should surround %f with double quotes otherwise it will fail copying file names with spaces