。。
[ Last edited by flyinspace on 2008-8-21 at 04:45 PM ]
[ Last edited by flyinspace on 2008-8-21 at 04:45 PM ]
知,不觉多。不知,乃求知
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!
for /f "skip=5 tokens=* " %%i in ('dir /b /o-d /ad-h-s') do echo 要删除的文件名为:,语法格式:
@echo off
set TT=5&set "ph=d:\000"
for /f "tokens=1-3 delims=-/\:. " %%i in ("%date%") do set /a p1=%%i,p2=100%%j%%100,p3=100%%k%%100
if %p3% gtr %TT% goto ppp
:nxt
set/a p2-=1
if %p2% equ 0 set/a p1-=1,p2=12
set/a PN2="!(p1%%4)&!(!(p1%%100))|!(p1%%400)",PN2=28+PN2
for /f "tokens=%p2%" %%i in ("31 %pN2% 31 30 31 30 31 31 30 31 30 31") do set/a p3+=%%i
if %p3% leq %tt% goto nxt
:ppp
set/a p3-=tt
setlocal enabledelayedexpansion
for %%i in (p2 p3) do if !%%i! lss 10 set %%i=0!%%i!
for /f "skip=7 tokens=1,3*" %%i in ('dir /ad /tc "%ph%" 2^>nul^|find /v "字节"') do (
if %p1%-%p2%-%p3% gtr %%i rd /s /q "%ph%\%%k"
)
pause&exit

do set FiveDay=%%a
do (@echo off
setlocal enabledelayedexpansion
set SrcDir=D:\rardata
>"%tmp%\MyDel.vbs" echo dt=date()-15
>>"%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
for /f "tokens=*" %%a in ('dir /s /b /a-d "%SrcDir%"') do (
set FileDate=%%~ta
set FileDate=!FileDate:-=!
set FileDate=!FileDate:~0,8!
if !FileDate! lss %DateFlag% (
del /f /q "%%a"
)
)
@echo off
setlocal enabledelayedexpansion
set SrcDir=D:\rardata
>"%tmp%\MyDel.vbs" echo dt=date()-15
>>"%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
for /f "tokens=*" %%a in ('dir /s /b /a-d "%SrcDir%"') do (
set FileDate=%%~ta
set FileDate=!FileDate:-=!
set FileDate=!FileDate:~4,10!
if !FileDate! lss %DateFlag% (
del /f /q "%%a"
)
)
| 评分人 | 分数 | 时间 |
|---|---|---|
| qwertl | +2 | 2008-09-15 02:13 |

的dir后要指定删去文件的目录路径吧?set usbdisk=E:
set befor2days=
set nowdate=
echo wscript.echo dateadd("d",-2,date) >%tmp%\tmp.vbs
for /f "tokens=1,2,3* delims=-" %%i in ('cscript /nologo %tmp%\tmp.vbs') do set y=%%i
for /f "tokens=1,2,3* delims=-" %%i in ('cscript /nologo %tmp%\tmp.vbs') do set m=%%j
for /f "tokens=1,2,3* delims=-" %%i in ('cscript /nologo %tmp%\tmp.vbs') do set d=%%k
if %m% LSS 9 set m=0%m%
if %d% LSS 9 set d=0%d%
set/a befor2days=%y%%m%%d%
echo wscript.echo dateadd("d",-0,date) >%tmp%\tmp.vbs
for /f "tokens=1,2,3* delims=-" %%i in ('cscript /nologo %tmp%\tmp.vbs') do set y=%%i
for /f "tokens=1,2,3* delims=-" %%i in ('cscript /nologo %tmp%\tmp.vbs') do set m=%%j
for /f "tokens=1,2,3* delims=-" %%i in ('cscript /nologo %tmp%\tmp.vbs') do set d=%%k
if %m% LSS 9 set m=0%m%
if %d% LSS 9 set d=0%d%
set/a nowdate = %y%%m%%d%
........中间省略,日期整理为:20080825 这种格式,并以此为目录。
dir %usbdisk%\ /ad/on/b>%tmp%\usbdir.tmp
for /f "delims=" %%i in (%tmp%\usbdir.tmp) do (
if %%i lss %befor2days% (
rd /s/q %usbdisk%\%%i
)