创建批处理以解析文本文件,查找文件夹并复制它及其树

时间:2013-02-24 15:43:41

标签: batch-file

我正在努力让它发挥作用。 这是我的批处理文件,仅用于我放置内部集的测试。 我想解析一个文本文件,其中包含文件夹名称列表,找到该文件夹​​并仅复制该文件夹及其内容及其树。

@echo off
setlocal
set str=SMX47
for /f "delims=" %%a in ('dir /b /s /o-d /ad') do if "%%~na" == "%str%" copy "%%a" "C:\Test\testcopy"

找到名为SMX47的文件夹,并仅将其内容复制到文件夹testcopy中。 我想得到:

\GP\GV\SMX47\(所以树)和文件夹SMX47的内容。

感谢您的帮助。 萨姆

1 个答案:

答案 0 :(得分:0)

这是一种方法。

,删除暂停,@ echo开启和@echo关闭(结束时)。

@echo off
set str=SMX47
for /f "delims=" %%a in ('dir /b /s /o-d /ad') do (
   if "%%~na" == "%str%" (
      call :CopyFolderStructure "%%a"
      )
   )
pause
goto :eof

:CopyFolderStructure
set FolderStructure=%~1
call set FolderStructure=%%FolderStructure:%cd%=%%
@echo on
xcopy /i /y "%~1\*.*" "C:\Test\testcopy%FolderStructure%\"
@echo off
goto :eof