问题
I am using a batch file on a USB stick to backup my pictures. I use the following command:
for /r C:\ %%x in (*.jpg *.png *.gif) do @copy /y %%x .
I want to exclude files in the mailfolder WINDOWS and PROGRAM FILES.
Does anyone have an idea how I can do this with a batch file?
回答1:
Drop COPY
and use ROBOCOPY which exists in Windows Vista+ & is downloadable for prior versions.
It supports /XD
to exclude specific directories & /XF
to exclude file masks at the command line.
E.g.
robocopy.exe c:\ c:\destination\ *.jpg *.png *.gif /xd "Program files" "windows" /S
(Note this will recreate the directory structure in c:\destination\, which thinking about it may not be what you want)
回答2:
Turn copy
into xcopy
and then you can use it's /EXCLUDE
switch
@xcopy %%x /y /EXCLUDE:\WINDOWS\
See xcopy /?
for the details.
来源:https://stackoverflow.com/questions/12976848/exclude-folders-in-batch-copy-script