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

[文件操作] 批处理如何删除空文件夹(空文件夹内还有空文件夹)?

比如想把E盘内的空文件夹删除,再论坛搜到以下代码:
  1. for /f "delims=" %%a in ('dir /b/s/ad "E:\"') do 2>nul rd "%%a\"
复制代码
试了,但只能删除一级空文件夹,如果空文件夹里面还有空文件夹,删除的只是里面的文件夹。
求代码

要求:删除空文件夹或者空文件夹里面还有空文件夹的文件夹。(有点乱,意思就是,只要是空文件夹就统统删除,不论它是几级空文件夹,全删除)。

  1. rd/s/q
复制代码

TOP

回复 2# 狗屁不通


    2楼的,不是我说,你代码真烂!
  1. for /f %%i in ('dir/s/b/ad') do (
  2. pushd %%i
  3. dir|find "0 个文件">nul&&rd/s/q %%i
  4. )
复制代码

TOP

  1. @echo off
  2. setlocal enabledelayedexpansion
  3. mode con cols=80 lines=25
  4. title 空文件夹清理 -
  5. color 3F
  6. echo ★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★
  7. echo ☆                                                                          ☆
  8. echo ★                       空文件夹清理工具                                   ★
  9. echo ☆                                                                          ☆
  10. echo ☆                                                                          ☆
  11. echo ★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★
  12. set /a sum=0
  13. echo.
  14. echo.
  15. echo 说明此工具会删除当前所在目录及其子目录下的空文件夹,以节省空间。
  16. echo.
  17. echo       当前工作目录为: %cd%
  18. echo.
  19. echo                                                   任意键   开始删除空文件夹
  20. pause>nul
  21. echo -----------------------------------------------------------------------------
  22. for /f "delims=" %%i in ('dir /ad /b /s') do (
  23. dir /b "%%i"|findstr .>nul||rd "%%i"&&echo 成功删除空文件夹:%%i&&set /a sum=sum+1
  24. )
  25. echo -----------------------------------------------------------------------------
  26. echo      共删除%cd%目录下 空文件夹个数:%sum%
  27. pause>nul
  28. set sum=
  29. exit
复制代码

TOP

如果里面的空文件夹不删的话,那么外面的又怎么会为空呢,所以再运行几次就可以了,这要看你文件夹级数了
枫中残雪:风停了,我的心却在动,让我心中的寒意走向远方

TOP

回复 4# ny350101

这个目录下有一个空文件夹被删除了,这个文件夹还在
    有些还是删除不了怎么回事呢。有空格和符号的文件夹无法删除

TOP

返回列表