Board logo

标题: bat删除N天以前的文件 [打印本页]

作者: zjutsoft     时间: 2008-7-17 11:27    标题: bat删除N天以前的文件

查看了 --(已结)如果在WINDOWS下DOS命令行删除N天以前的文件 --(http://www.cn-dos.net/forum/viewthread.php?tid=16676)这个帖子 。。。找到了解决方案。。

批处理的内容是这样的:
******************************************************
@echo off

rem ============================================
rem 这个批处理的作用是删除d:\datafile里面
rem 最后一次修改是7天之前(不包括7天)的
rem 所有文件(包括所有子目录里的文件)
rem ============================================



rem ============================================
rem 得到7天前的日期
rem 如果今天是8月25,则7天前是日期是 8月18日
rem ============================================
GetInfo.COM /d:-7
set theDay=%year%-%mon%-%day%



rem ============================================
rem   这是在D:\datafile中搜索8天前(含8天)修改过的文件
rem  即8月17日 及 之前 修改的文件
rem ============================================
attrib/s d:\datafile\*.* -h -r -s
:Loop
dirt.com /d:-%theDay% d:\datafile\*.* /q
if %DirtRet%==Fail goto end
del %FPath%\%FName%
goto Loop

:end


******************************************************



里面的DirT.com和GetInfo.com可以到http://www.13886.com/soft//下载,

但这链接失效了。。。。哪位有啊!。。。帮帮忙。。。

[ Last edited by zjutsoft on 2008-7-17 at 11:28 AM ]
作者: zjutsoft     时间: 2008-7-17 11:28
我要 这个两个第三方插件DirT.com和GetInfo.com
作者: zjutsoft     时间: 2008-7-17 11:29
大家帮帮忙吧!!!!
作者: zjutsoft     时间: 2008-7-17 11:42
没人帮我啊!
作者: abcd     时间: 2008-7-17 13:02
还不如到2K3下,复制个forfiles
好用多了。
作者: HAT     时间: 2008-7-17 13:34
用其它方法不行吗?
@echo off
rem 删除当前目录下3天之前的文本文件
set DstDir=C:\test
>"%tmp%\MyDel.vbs" echo dt=date()-3
>>"%tmp%\MyDel.vbs" echo s=right(year(dt),4) ^& right("0" ^& month(dt),2) ^& right("0" ^& day(dt),2)
>>"%tmp%\MyDel.vbs" echo wscript.echo s
for /f %%a in ('cscript /nologo "%tmp%\MyDel.vbs"') do set DateFlag=%%a
setlocal enabledelayedexpansion
for %%a in ("%~dp0*.txt") do (
  set t=%%~ta
  set FileDate=!t:~6,4!!t:~0,2!!t:~3,2!
  if !FileDate! lss %DateFlag% del /q "%%a"
)

作者: dddyjq1     时间: 2008-12-1 23:27
xp下测试不能用,请各位看看有没有办法
http://upload.cn-dos.net/img/1145.rar