本帖最后由 aloha20200628 于 2025-3-1 08:13 编辑
回复 1# 大地
以下批处代码先遍历 F:\A 各级目录中的每个文件,并逐一在 F:\A 中搜索定位,定位成功后连其目录带文件复制到 F:\C 目录下...- @echo off &set "da=F:\A" &set "db=F:\B" &set "dc=F:\C"
- for /f "delims=" %%F in ('dir /b/s/a-d "%da%\*" ') do for /f "delims=" %%i in ('dir /b/s/a-d "%db%\%%~nxF" ') do (
- set "p=%%~dpi" &set "i=%%i" &setlocal enabledelayedexpansion
- xcopy /iyq "!i!" "!p:%db%=%dc%!" &endlocal)
- pause&exit/b
复制代码 如果要从 F:\A 完整复制子目录及其文件直接到 F:\C 用以下一行流代码即可(不必再绕经 F:\B 作同名提取)...- @xcopy /siyq "F:\A" "F:\C"
复制代码 如果楼主确认就是要从 F:\B 中提取与 F:\A 下对应的同名文件并采用 F:\A 中的对应目录复制到 F:\C,可用以下代码...- @echo off &set "da=F:\A" &set "db=F:\B" &set "dc=F:\C"
- for /f "delims=" %%F in ('dir /b/s/a-d "%da%\*" ') do for /f "delims=" %%i in ('dir /b/s/a-d "%db%\%%~nxF" ') do (
- set "p=%%~dpF" &set "i=%%i" &setlocal enabledelayedexpansion
- xcopy /iyq "!i!" "!p:%da%=%dc%!" &endlocal)
- pause&exit/b
复制代码
|