我在网络驱动器上有两个目录。 X:\ MAPS和X:\ MAPS2 目录1和2有一堆文件。
我需要一个批处理文件: 读取目录1中的每个文件并检查目录2中是否存在相同文件,然后将此文件复制到另一个目录X:\ MAPS3 阅读下一个文件,依此类推.. 最后,我最终得到X:\ MAPS3,它只有1和2的重复文件。
答案 0 :(得分:1)
for %%F in (X:\MAPS\*) do if exist "X:\MAPS2\%%~nxF" copy "%%~fF" "X:\MAPS3\%%~nxF"
评论的扩展答案
for %%F in (X:\MAPS\*) do (
if exist "X:\MAPS2\%%~nxF" copy "%%~fF" "X:\MAPS3\%%~nxF"
if exist "X:\MAPS5\%%~nxF" copy "%%~fF" "X:\MAPS3\%%~nxF"
if exist "X:\MAPS7\%%~nxF" copy "%%~fF" "X:\MAPS3\%%~nxF"
if exist "X:\MAPS8\%%~nxF" copy "%%~fF" "X:\MAPS3\%%~nxF"
if exist "X:\MAPS9\%%~nxF" copy "%%~fF" "X:\MAPS3\%%~nxF"
)
答案 1 :(得分:0)
在批处理文件中:
cd /d X:\MAPS
for %%i in (*.*) do if exist "X:\MAPS2\%%1" copy "%%i" X:\MAPS3
从命令提示符:
C:>cd /d X:\MAPS
X:\MAPS>for %i in (*.*) do if exist "X:\MAPS2\%i" copy "%i" X:\MAPS3