逻辑:
切换到操作的目录,如果文件夹里的文件数量小于3,则不做操作,
否则,按照创建时间倒序排列,遍历,跳过前3个文件,对于之后的文件执行删除操作。
@echo off cd D:Task estbat set cnt=0 for %%A in (*) do set /a cnt+=1 echo 文件数量是: %cnt% :: 数量小于3则退出命令 if %cnt% LSS 3 ( echo 数量小于3退出命令 exit ) setlocal enabledelayedexpansion set fileorder=0 for /f "tokens=1-3*" %%a in ('dir /a-d /tc/o-d ^|find ":"') do ( echo;%cd%\%%d ^| %%a %%b ^| %%d set /a fileorder+=1 if !fileorder! GTR 4 del %cd%\%%d ) echo 删除操作完成 exit