中国DOS联盟

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

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

中国DOS联盟论坛
现在时间是 2026-08-12 12:26
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » XP下如何用bat文件删除文件夹中30天前的文件? 查看 960 回复 1
楼 主 XP下如何用bat文件删除文件夹中30天前的文件? 发表于 2009-09-04 02:28 ·  中国 北京 北京方正宽带网络技术有限公司(北京电信出口)
新手上路
积分 1
发帖 1
注册 2009-09-03 06:30
16年会员
UID 151412
性别 男
状态 离线
请教各位专家:

XP系统下,C:\data文件夹中每日自动存入大量日志文件,如何写一个批处理文件,每日自动删除此文件夹中30天前的文件?谢谢啦!
2 发表于 2009-09-04 05:34 ·  中国 吉林 延边朝鲜族自治州 电信
银牌会员
★★★
正在学习中的菜鸟...
积分 1,039
发帖 897
注册 2009-03-01 15:34
17年会员
UID 140302
性别 男
来自 在地狱中仰望天堂
状态 离线
如果你不想使用第三方工具的话:
1,手工删除目录下该删除的日志文件
2,在任务计划里添加每天运行这个批处理
3,确保该计划每天都被执行
@echo off
if %date:~5,1% == 0 (set /a han2=%date:~6,1%-1) else set /a han2=%date:~5,2%-1
if %han2% == 0 (set /a han1=%date:~0,4%-1) else set han1=%date:~0,4%
if %han2% lss 10 set han2=0%han2%
set han=%han1%-%han2%-%date:~8,2%
for /f "tokens=1,4* " %%i in ('dir "C:\data" /a:-d /t:c ^| findstr /i ".log$"') do if "%han%" == "%%i" del /q /a /f "%%j">nul 2>nul


不过,用第三方工具,用vbs,都比纯批处理在这个问题上做得简洁

[ Last edited by Hanyeguxing on 2009-9-4 at 05:52 ]
论坛跳转: