Board logo

标题: [文件操作] [已解决]批处理怎样把B文件夹中不存在的文件复制到C文件夹? [打印本页]

作者: 大地    时间: 2019-3-15 09:43     标题: [已解决]批处理怎样把B文件夹中不存在的文件复制到C文件夹?

文件在A文件夹存在,在B文件夹不存在,把B文件夹中不存在的文件过滤复制到C文件夹,复制时要求目录和子目录跟随复制,也就是保持源目录结构不变,批处理如何写,请大大帮助,谢谢。
作者: yhcfsr    时间: 2019-3-15 10:07

如果:
  1. A\123\1.TXT
  2. B\345\123\1.TXT
复制代码
那么1.TXT在B中是存在还是不存在???
作者: 大地    时间: 2019-3-15 10:31

本帖最后由 大地 于 2019-3-15 10:37 编辑

回复 2# yhcfsr


    不存在

         我要求同目录比较,同级目录比较

         同目录比较不存的文件  复制到 c\123\文件夹下

         对不起  我语言表达弱,

         望帮忙
作者: zaqmlp    时间: 2019-3-15 12:38

  1. @echo off
  2. title 互助互利,扫码头像,感谢赞助;有什么问题,可加QQ956535081及时沟通
  3. cd /d "%~dp0"
  4. set "文件夹1=D:\a"
  5. set "文件夹2=D:\b"
  6. set "文件夹3=D:\c"
  7. for /f "delims=" %%a in ('dir /a-d/b/s "%文件夹1%"') do (
  8.     set "file=%%a"
  9.     set "folder=%%~dpa"
  10.     setlocal enabledelayedexpansion
  11.     set "newfile=!file:%文件夹1%=%文件夹2%!"
  12.     set "newfolder=!folder:%文件夹1%=%文件夹3%!"
  13.     if not exist "!newfile!" (
  14.         echo;"!file!" --^> "!newfolder!"
  15.         xcopy "!file!" "!newfolder!" /q /y
  16.     )
  17.     endlocal
  18. )
  19. pause
复制代码

作者: 大地    时间: 2019-3-15 12:50

回复 4# zaqmlp


测试成功, 谢谢大师




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