Board logo

标题: [文件操作] 求助BAT脚本批量替换不同目录同名文件 [打印本页]

作者: haichuan5121    时间: 2023-1-16 16:41     标题: 求助BAT脚本批量替换不同目录同名文件

大神好:
        在桌面文件夹 A 下有数十个.exe类型文件;
        需要把C盘下B文件夹及其子文件夹下查找与 桌面A 内同名的文件并替换掉;怎么搞呢?
作者: 77七    时间: 2023-1-16 16:49

用文件夹A中的文件替换掉文件夹B中的文件,还是相反呢?
同名包括扩展名吗?
作者: haichuan5121    时间: 2023-1-16 16:58

回复 2# 77七


    用A中的文件替换B的   包括扩展名 都是.EXE执行文件
作者: Batcher    时间: 2023-1-16 17:10

回复 1# haichuan5121


请参考Q-04把bat文件保存为ANSI编码:
https://mp.weixin.qq.com/s/Koje4FufWxWBs7ioDy_LJA
  1. @echo off
  2. REM 从哪个文件夹复制
  3. set "OldFolder=%userprofile%\桌面\A"
  4. REM 复制到哪个文件夹
  5. set "NewFolder=C:\B"
  6. if not exist "%OldFolder%\" (
  7.     echo 找不到文件夹 "%OldFolder%"
  8. )
  9. if not exist "%NewFolder%\" (
  10.     echo 找不到文件夹 "%NewFolder%"
  11. )
  12. cd /d "%OldFolder%"
  13. for /f "delims=" %%i in ('dir /b /a-d *.exe') do (
  14.     echo 正在处理文件:%%i
  15.     for /f "delims=" %%j in ('dir /b /s /a-d "%NewFolder%\%%i" 2^>nul') do (
  16.         copy /y "%%i" "%%~dpj"
  17.     )
  18. )
  19. :End
  20. pause
复制代码

作者: 77七    时间: 2023-1-16 17:38

  1. @echo off
  2. set /p aDir=请拖动文件夹A到此处:
  3. set /p bDir=请拖动文件夹B到此处:
  4. cd /d "%bDir%\"
  5. for /f "delims=" %%i in ('dir /b /s /a-d *.exe') do (
  6. if exist "%aDir%\%%~nxi" (
  7. copy /y "%aDir%\%%~nxi" "%%~dpi"
  8. )
  9. )
  10. pause
复制代码





欢迎光临 批处理之家 (http://bbs.bathome.net/) Powered by Discuz! 7.2