Windows 删除除X个最新文件夹外的所有文件夹

Windows 删除除X个最新文件夹外的所有文件夹,windows,batch-file,cmd,Windows,Batch File,Cmd,是否有人可以提供一个批处理脚本,该脚本将删除目录中除X个最近修改的文件夹外的所有文件夹。我已经看过了,但这是基于一个绝对时间窗口,而不是修改日期的相对顺序 感谢您的帮助这将根据修改日期保留10个最新日志文件: @echo off for /f "skip=10 delims=" %%a in (' dir *.log /o-d /a-d /b ') do echo del "%%a" 删除echo以使其执行删除操作,而不仅仅是显示它们。使用rd/S/Q以静默方式删除整个非空目录,但这是有效的。

是否有人可以提供一个批处理脚本,该脚本将删除目录中除X个最近修改的文件夹外的所有文件夹。我已经看过了,但这是基于一个绝对时间窗口,而不是修改日期的相对顺序


感谢您的帮助

这将根据修改日期保留10个最新日志文件:

@echo off
for /f "skip=10 delims=" %%a in (' dir *.log /o-d /a-d /b ') do echo del "%%a"

删除echo以使其执行删除操作,而不仅仅是显示它们。

使用rd/S/Q以静默方式删除整个非空目录,但这是有效的。谢谢对于我使用的最新5个文件夹:对于/f“skip=5 delims=“%%a IN('DIR%DEST%/o-d/b'),执行RD/S/Q”%DEST%\%%a“,其中%DEST%是文件夹的路径。