删除指定文件夹中除保留的文件外的所有文件批处理
@echo off set "ext= sln csproj" for /f "delims=" %%a in ('dir /b/s/a-d *.*') do ( set .= if /i not "%%~nxa"=="%~nx0" ( for %%i in (%ext%) do if /i "%%~xa"==".%%i" set .=. ) else set .=. if not defined . del /a/q/f "%%a" )
删除指定文件夹下的空文件夹,包括子目录批处理
@echo off :h setlocal enabledelayedexpansion for /d %%a in (%1*) do ( set p="%%a\" set p=!p:.\"=..\"! rd !p! || ( call :h !p! & rd !p! ) )