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

[文件操作] 如何批处理复制三级文件夹到一级文件夹

如:
A-AA-AAA
A-BB-BBB
A-CC-CCC
...

效果:
新建文件夹-AAA BBB CCC...

自己顶贴!!!

TOP

本帖最后由 Nsqs 于 2017-1-21 09:07 编辑
  1. @echo off
  2. set "folder=A" %和A文件夹放在一起,不是放在A文件夹里面%
  3. for /d %%1 in ("%folder%\*")do (
  4. for /d %%2 in ("%%1\*")do xcopy /eiy "%%1" "%~dp0\new\*"
  5. )
复制代码
或者灵活性高的方法
  1. :on error resume next
  2. :sub class_bat
  3. ' 2>nul &@echo off&cls&set "folder=A" %和A文件夹放在一起,不是放在A文件夹里面%
  4. ' 2>nul &for %%1 in (%folder%)do set "folder=%%~dpnx1"
  5. ' 2>nul &(for /f %%1 in ('^(echo %folder%^&dir /s/b/ad %folder%\*^)^|cscript -nologo -e:"vbs" "%~0"')do if "%%1"=="." (echo 超出子目录层级,请重新分配目录级数!)else xcopy /eiy "%%1" "%~dp0\new\*")&pause&exit
  6. :end sub
  7. set ws=wsh.stdin
  8. set regexp=new regexp
  9. with regexp
  10. m=3 '是3级目录就修改为3
  11. .global=-1:.pattern="\\"
  12. s=ws.readline:n=.execute(s).count
  13. do
  14. s=ws.readline:c=.execute(s&"\").count+1
  15. if n+m>c then wsh.echo ".":wsh.quit
  16. if n+m=c then wsh.echo s
  17. loop until ws.atendofstream
  18. end with
复制代码

TOP

返回列表