找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 20045|回复: 1

[其他] [分享]目录树层搜索

[复制链接]
发表于 2017-4-22 22:07:28 | 显示全部楼层 |阅读模式
本帖最后由 /zhqsystem/zhq 于 2017-4-23 00:55 编辑

重新修正下错误
  1. @echo off&setlocal enabledelayedexpansion
  2. call:path_dp0
  3. echo,批处理所在层数: !n!
  4. set/p "目录树层数设置=输入一个层次,必须为10进制正整数,层次必须大于!n!:"
  5. if !n! Geq %目录树层数设置% echo,出现一个错误批处理在当前层或子层自动复制到当前根层&&ping /n 5 127.1 >nul&&xcopy/y "%~f0" "%~d0"&&start/i "" "%~d0\%~nx0"&&exit
  6. set "计数文件=0"&&set "计数文件夹=0"
  7. for /f "delims=" %%i in ('dir/s/b "%~dp0*.*"')do (
  8. set "#=%%~fi"&&call:path
  9. if !n! equ %目录树层数设置% (
  10.   if exist "%%~fi" (
  11.    set/a "计数文件夹+=1"
  12.    echo,文件夹结果!计数文件夹!: %%i
  13.   )else if exist "%%~fi" (
  14.    set/a "计数文件+=1"
  15.    echo,文件  结果!计数文件!: %%i
  16.   )
  17. )
  18. )
  19. pause
  20. goto:eof
  21. :path_dp0
  22. set "#=%~f0"&&call:path
  23. goto:eof
  24. :path
  25. set "n=-1"
  26. if exist "!#!" (set "n=-1")else set "n=-2"
  27. :path_loop
  28. if not defined # goto:eof
  29. for /f "tokens=1,* delims=" %%y in ("!#!")do set "#=%%z"
  30. set/a "n+=1"
  31. goto:path_loop
复制代码
发表于 2017-4-22 22:52:37 | 显示全部楼层
风格可以更好
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-17 14:50 , Processed in 0.017127 second(s), 8 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表