[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖
本帖最后由 flashercs 于 2019-8-2 22:02 编辑
  1. @echo off
  2. REM 功能:以%dri%为根目录,删除深度大于%depth%的目录中的文件名和文件夹名中字符串%str2replace%
  3. REM 要处理的目录深度是大于%depth%,根目录深度是0,依次递增。
  4. REM depth : 要操作的目录深度必须大于 depth
  5. set "depth=0"
  6. REM 根目录,默认是脚本所在目录
  7. set "dir=%~1"
  8. REM 文件或目录名中需要删除的字符串
  9. set "str2replace=来阁设计整理出品-"
  10. if not defined dir set "dir=%~dp0"
  11. call :recurse "%dir%" 0
  12. pause
  13. exit /b
  14. :recurse
  15. setlocal
  16. pushd %1||goto end
  17. set /a "childdepth=%2+1"
  18. REM 处理当前目录的文件夹,centerorder
  19. for /f "delims=" %%A in ('"2>nul,dir /ad /b"') do (
  20.   call :recurse "%%A" %childdepth%
  21.   if %2 gtr %depth% (
  22.     echo Directory: "%%~fA"
  23.     set "fsoname=%%A"
  24.     call ren "%%A" "%%fsoname:%str2replace%=%%"
  25.   )
  26. )
  27. if %2 leq %depth% goto out
  28. REM 处理当前目录的文件,postorder
  29. for /f "delims=" %%B in ('"2>nul,where ".:*%str2replace%*""') do (
  30.     echo File: "%%B"
  31.     set "fsoname=%%~nxB"
  32.     call ren "%%fsoname%%" "%%fsoname:%str2replace%=%%"
  33. )
  34. :out
  35. popd
  36. :end
  37. endlocal
  38. exit /b
复制代码
微信:flashercs
QQ:49908356

TOP

返回列表