I'm a newbie, so bear with me...
I am trying to copy all .doc
files that I have scattered throughout several subdirectories of one main directory into another directory using a batch file. I have managed to get a filelist.txt
of all the files (there are hundreds) out of these directories that I want to copy using:
"C:\Main directory\sub directory"
dir /b /s *.doc > "C:\Main directory\sub directory\filelist.txt"
What script would I use to xcopy those into one directory? Can I use some code that actually grabs those file names from filelist.txt
and xcopies them?
For reference, I looked at the question below because it looked like it was doing what I want to do, but it didn't work for me.
Using xcopy to copy files from several directories to one directory
Also, I would really like to understand this concept, so please break down the code for me to tell me what each item does, or at least include a link that will explain it.
In a batch file solution
for /R c:\source %%f in (*.xml) do copy %%f x:\destination\
The code works as such;
for each file for
in directory c:\source
and subdirectories /R
that match pattern (\*.xml)
put the file name in variable %%f
, then for each file do
copy file copy %%f
to destination x:\\destination\\
Just tested it here on my Windows XP computer and it worked like a treat for me. But I typed it into command prompt so I used the single %f
variable name version, as described in the linked question above.