I thought the /s /e was redundant when I first saw it too. The xcopy docs differ on the usage however:
>From "Help and Support Center" docs: /s Copies directories and subdirectories, unless they are empty. If you omit /s, xcopy works within a single directory. /e Copies all subdirectories, even if they are empty. Use /e with the /s and /t command-line options. command line (xcopy /?) /S Copies directories and subdirectories except empty ones. /E Copies directories and subdirectories, including empty ones. Same as /S /E. May be used to modify /T. On Wed, Jul 20, 2011 at 7:49 PM, Crawford, Scott <crawfo...@evangel.edu>wrote: > Nice to see pushd and popd making an appearance J**** > > ** ** > > Few nits and questions, just to make sure I’m not missing something:**** > > ** ** > > **1. **The echo in front of xcopy shouldn’t be there. I’m sure it’s > just there for troubleshooting and left as an oversight. The /s /e is > redundant, right?**** > > **2. **I’m not very practiced with the enhanced ~ substitution, but > couldn’t the SET @DIR=%%~fpv line omit the p?**** > > **3. **I think the ECHO DEST: %@DEST%\%%~pv line has an extra \*** > * > > **4. **I think the xcopy’s destination parameter ("%@DEST%%%~pv")needs > to be > "%@DEST%%%~pnv". Without it, the files get copied into the corresponding > parent on the destination.**** > > **5. **Is there any way to get the parentheses code blocks work from > the command line or do they need to be inside of a .bat? I’ve tried > stringing the commands together with &&, but met with limited success.**** > > ** ** > > Possible drawback to this method:**** > > The destination path will contain the full path of the source. For > instance, if the source root is C:\a\b\c and it contains a folder called > Search_Term, and we wan’t the destination to be D:\, when we run the script, > the destination will contain D:\a\b\c\Search_Term, which may not be the > goal.**** > > ** ** > > In the end, I don’t think this is getting any better results the my > original line. The 2>NUL is just hiding the failures.**** > > ** ** > > Thanks for the script though, it was fun to digest J**** > > ** ** > > *From:* Andrew S. Baker [mailto:asbz...@gmail.com] > *Sent:* Wednesday, July 20, 2011 3:06 PM > > *To:* NT System Admin Issues > *Subject:* Re: file searching and copying**** > > ** ** > > How long are the paths? > > > There are other ways to handle this, btw... > > **** > > Try the following snippet. It should handle long folders even if Windows > complains about them**** > > @echo off**** > > SETLOCAL ENABLEDELAYEDEXPANSION**** > > SET @SOURCE=%SystemDrive%**** > > SET @DEST=D:\SomePlace**** > > SET @FIND=PrivacIE**** > > **** > > :Main**** > > for /f "tokens=*" %%v in ('dir /ad /b /s "%@SOURCE%\*.*" 2^>NUL ^| FIND > /I "%@FIND%"') do (**** > > SET @DIR=%%~fpv**** > > ECHO.**** > > ECHO SOURCE: !@DIR! **** > > ECHO DEST: %@DEST%\%%~pv**** > > PUSHD !@DIR!**** > > echo XCOPY *.* "%@DEST%%%~pv" /S /E /R /Y**** > > ECHO.**** > > POPD**** > > )**** > > ** ** > > ** ** > > :ExitBatch**** > > ENDLOCAL**** > > **** > > > > > **** > > *ASB***** > > *http://about.me/Andrew.S.Baker***** > > *Harnessing the Advantages of Technology for the SMB market…***** > > > > **** > > On Wed, Jul 20, 2011 at 2:24 PM, Jeff Bunting <bunting.j...@gmail.com> > wrote:**** > > Thanks all. Scott's suggestion is close and at least got me pointed in the > right direction. Some of the paths are too long for DIR which throws a > wrench in the works, so I'm going to have to rely on windows search for now. > **** > > **** > > Powershell, unfortunately, currently isn't an option.**** > > **** > > Jeff**** > > On Wed, Jul 20, 2011 at 12:23 PM, Andrew S. Baker <asbz...@gmail.com> > wrote:**** > > Good one, Scott. > > Jeff, remember to add a % to each variable if used in a batch file, vs the > command line. > > > **** > > ** ** > > *ASB***** > > *http://about.me/Andrew.S.Baker***** > > *Harnessing the Advantages of Technology for the SMB market…***** > > > > **** > > On Wed, Jul 20, 2011 at 12:13 PM, Crawford, Scott <crawfo...@evangel.edu> > wrote:**** > > For /f “tokens=*” %i in (‘dir *WORDS_TO_SEARCH* /s/a/b/ad’) do robocopy > /mir “%i” DESTINATION_PATH**** > > **** > > This will search a folder tree for directorys. Change the dir command to > eliminate the /s if you only want to search the root.**** > > **** > > *From:* Jeff Bunting [mailto:bunting.j...@gmail.com] > *Sent:* Wednesday, July 20, 2011 11:01 AM**** > > > *To:* NT System Admin Issues > *Subject:* file searching and copying**** > > **** > > I'm attempting to search for particular words in a directory name (must use > wildcards!), and, if found, copy the the directory tree while maintaining > its structure to another directory.**** > > **** > > Are there any native tools (or reskit like robocopy) that can accomplish > this somewhat easily? **** > > **** > > thanks,**** > > Jeff**** > > ** ** > > ~ Finally, powerful endpoint security that ISN'T a resource hog! ~ > ~ <http://www.sunbeltsoftware.com/Business/VIPRE-Enterprise/> ~ > > --- > To manage subscriptions click here: > http://lyris.sunbelt-software.com/read/my_forums/ > or send an email to listmana...@lyris.sunbeltsoftware.com > with the body: unsubscribe ntsysadmin**** > > ** ** > > ~ Finally, powerful endpoint security that ISN'T a resource hog! ~ > ~ <http://www.sunbeltsoftware.com/Business/VIPRE-Enterprise/> ~ > > --- > To manage subscriptions click here: > http://lyris.sunbelt-software.com/read/my_forums/ > or send an email to listmana...@lyris.sunbeltsoftware.com > with the body: unsubscribe ntsysadmin**** > > ** ** > > ~ Finally, powerful endpoint security that ISN'T a resource hog! ~ > ~ <http://www.sunbeltsoftware.com/Business/VIPRE-Enterprise/> ~ > > --- > To manage subscriptions click here: > http://lyris.sunbelt-software.com/read/my_forums/ > or send an email to listmana...@lyris.sunbeltsoftware.com > with the body: unsubscribe ntsysadmin**** > > ~ Finally, powerful endpoint security that ISN'T a resource hog! ~ > ~ <http://www.sunbeltsoftware.com/Business/VIPRE-Enterprise/> ~ > > --- > To manage subscriptions click here: > http://lyris.sunbelt-software.com/read/my_forums/ > or send an email to listmana...@lyris.sunbeltsoftware.com > with the body: unsubscribe ntsysadmin > ~ Finally, powerful endpoint security that ISN'T a resource hog! ~ ~ <http://www.sunbeltsoftware.com/Business/VIPRE-Enterprise/> ~ --- To manage subscriptions click here: http://lyris.sunbelt-software.com/read/my_forums/ or send an email to listmana...@lyris.sunbeltsoftware.com with the body: unsubscribe ntsysadmin