中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

中国DOS联盟论坛
现在时间是 2026-08-11 13:06
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 如何删除指定的体积范围的文件中创建时间最新的文件 查看 636 回复 4
楼 主 如何删除指定的体积范围的文件中创建时间最新的文件 发表于 2009-03-16 09:45 ·  中国 江苏 盐城 联通
新手上路
积分 2
发帖 2
注册 2009-03-15 15:40
17年会员
UID 141384
性别 男
状态 离线
如何用批处理实现 在指定的体积范围的文件中选择创建时间最新的文件删除

例如 该目标目录中的文件如下
1.exe 50kb 2009/3/13
2.dll 60kb 2009/3/14
3.exe 30kb 2009/3/14
4.exe 100kb 2009/3/15
5.exe 35kb 2009/3/16
6.bmp 50kb 2009/3/12

批处理的目标是删除后缀是exe的,体积范围在32-105kb之间符合要求的文件中,最新创建的那个文件。
这个例子里是5.exe

[ Last edited by realaaaaa on 2009-3-16 at 09:47 ]
2 发表于 2009-03-16 11:29 ·  中国 广东 东莞 电信
银牌会员
★★★
批处理编程迷
积分 1,916
发帖 752
注册 2008-12-28 04:30
17年会员
UID 135147
性别 男
来自 广西
状态 离线
测试成功后把echo.改成del /q

for /f "delims=" %%a in ('dir /o-d /b') do (
if %%~za leq 105000 (if %%~za gtr 32000 (echo. %%a&goto :ok))
)
:ok
pause
精简
=> 个人网志
3 发表于 2009-03-16 11:30 ·  中国 广东 东莞 电信
银牌会员
★★★
批处理编程迷
积分 1,916
发帖 752
注册 2008-12-28 04:30
17年会员
UID 135147
性别 男
来自 广西
状态 离线
测试成功后把echo.改成del /q

for /f "delims=" %%a in ('dir /o-d /b') do (
if %%~za leq 105000 (if %%~za gtr 32000 (echo. %%a&goto :ok))
)
:ok
pause
精简
=> 个人网志
4 发表于 2009-03-16 11:31 ·  中国 广东 东莞 电信
银牌会员
★★★
批处理编程迷
积分 1,916
发帖 752
注册 2008-12-28 04:30
17年会员
UID 135147
性别 男
来自 广西
状态 离线
测试成功后把echo.改成del /q

for /f "delims=" %%a in ('dir /o-d /b') do (
if %%~za leq 105000 (if %%~za gtr 32000 (echo. %%a&goto :ok))
)
:ok
pause


网络出错,以为没成功,所以。。。
并非想灌水。^_^

[ Last edited by netbenton on 2009-3-16 at 09:33 ]
精简
=> 个人网志
5 发表于 2009-03-16 17:44 ·  中国 江苏 盐城 联通
新手上路
积分 2
发帖 2
注册 2009-03-15 15:40
17年会员
UID 141384
性别 男
状态 离线
可以使用,谢谢大侠!
论坛跳转: