删除空文件夹
批处理递归删除当前及子目录中的空文件夹
将以下代码复制保存至def.bat文件中,直接双击运行即可(不推荐使用)
@echo off :deldir setlocal enabledelayedexpansion for /d %%a in (%1*) do ( set p="%%a\" set p=!p:.\"=..\"! rd !p! || ( call :deldir !p! & rd !p! ) )
出处:https://www.cnblogs.com/hhddd-1024/p/14275097.html
=======================================================================================
个人使用
优化:根据上面的思路修改,必须指定目标文件夹参数,调用方式:def.bat "c:\tmp"
@echo off cls :deldir setlocal enabledelayedexpansion if [%1] equ [] echo 未指定文件夹 & goto :eof set fp=%1 set fp="%fp%" & set fp=%fp:"=% if "%fp%" neq "" if "%fp:~-1%" neq "\" set fp=%fp%\ set fp="%fp%" for /d %%a in (%fp%*) do ( set p="%%a" set p=!p:.\"=..\"! rd !p! || ( call :deldir !p! & rd !p!) )
优化二
=======================================================================================
标签:fp,fp%,Bat,set,删除,%%,rd,文件夹 From: https://www.cnblogs.com/mq0036/p/17846158.html