@echo off & title 批量删除不符合文件夹 By 依梦琴瑶
setlocal enabledelayedexpansion
for /d %%a in (*) do (
if not exist "%%~a\*.jpg" (
rd /s/q "%%~a"
) else (
set Size=0
for /f "delims=" %%b in ('dir /a-d/s/b "%%~a\*"') do set /a Size=Size+%%~zb
if !Size! equ 0 rd /s/q "%%~a"
)
)
pause
放在“文件夹111”里运行即可。
追问你好,谢谢。测试了 一下 有些问题,可以删除空文件夹 ,但是不能删除只含3张以下图片的文件夹, 另外 我不想把脚本放在111里面, 想直接放在桌面上 可以吗?
追答亲,你问题中一开始只说了删除不包含jpg图片的文件夹,可没说少于多少张也删除吧,这应该怪你自己没描述清楚吧!
@echo off & title 批量删除不符合文件夹 By 依梦琴瑶
setlocal enabledelayedexpansion
cd /d 文件夹111
for /d %%a in (*) do (
set Size=0
set JNum=0
for /f "delims=" %%b in ('dir /a-d/s/b "%%~a\*" 2^>nul') do (
set /a Size+=%%~zb
if /i "%%~xb"==".jpg" set /a JNum+=1
)
if !Size! equ 0 (
rd /s/q "%%~a"
) else (
if !JNum! lss 4 rd /s/q "%%~a"
)
)
pause