[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文件操作] 如何复制目录A到指定目录B排除部分文件

本帖最后由 bluer88 于 2020-3-5 00:55 编辑

问题描述:
1、目录A下有多级子目录,子目录中有很多的各类文件;
2、例如目录tmp下面有1.1,1.2,1.8,3.5,10.a_beta,10.a_beta中的文件为

c:\tmp\10.a_beta\a80c8320f34cc.2
c:\tmp\10.a_beta\eaall-x-non1e.3
c:\tmp\10.a_beta\ffc5a7a80c8ad8.caba  
c:\tmp\10.a_beta\a80ec8320f3.1
c:\tmp\10.a_beta\setup.exe
c:\tmp\10.a_beta\22.exe
c:\tmp\10.a_beta\c1\1siqqX
c:\tmp\10.a_beta\c2\W.EXE
c:\tmp\10.a_beta\c3\WDwICON.EXE
c:\tmp\10.a_beta\c4\WD12CNV.DLL
c:\tmp\10.a_beta\c5\D1d2CNV.DLL
c:\tmp\10.a_beta\c6\RD12dCNV.aw
c:\tmp\10.a_beta\c7\1d2CNV.fe
c:\tmp\10.a_beta\c8\RD12CNV.43a
(只列出部分)

求助:
把目录tmp 复制到 另一个位置,目录结构不变的情况,如果只复制不带后缀名的文件,有后续名的文件跳过不要复制。谢谢!!!

  1. @echo off
  2. mode con lines=3000
  3. set info=互助互利,支付宝扫码头像,感谢打赏
  4. rem 有问题,可加QQ956535081及时沟通
  5. title %info%
  6. set "oldfolder=C:\temp"
  7. set "newfolder=D:\xxx\yyy"
  8. if not exist "%oldfolder%" (echo;"%oldfolder%" no found&goto end)
  9. if "%oldfolder:~-1%" equ "\" set "oldfolder=%oldfolder:~,-1%"
  10. if "%newfolder:~-1%" equ "\" set "newfolder=%newfolder:~,-1%"
  11. for /f "delims=" %%a in ('dir /a-d/b/s "%oldfolder%\"') do (
  12.     if "%%~xa" equ "" (
  13.         set "oldpath=%%~dpa"&set "oldfile=%%a"
  14.         setlocal enabledelayedexpansion
  15.         set "newpath=!oldpath:%oldfolder%=%newfolder%!"
  16.         if not exist "!newpath!" md "!newpath!"
  17.         echo;"!oldfile!" --^> "!newpath!"
  18.         copy /y "!oldfile!" "!newpath!"
  19.         endlocal
  20.     )
  21. )
  22. :end
  23. echo;%info%
  24. pause
  25. exit
复制代码
提供bat代写,为你省时省力省事,支付宝扫码头像支付
微信: unique2random

TOP

可以运行,且达到效果,感谢!

TOP

回复 3# bluer88
感谢还是红包实际点
提供bat代写,为你省时省力省事,支付宝扫码头像支付
微信: unique2random

TOP

提示: 该帖被管理员或版主屏蔽

TOP

回复 5# Gin_Q

深有同感
提供bat代写,为你省时省力省事,支付宝扫码头像支付
微信: unique2random

TOP

返回列表