![]() 支柱会员
|
copy自yesterday.vbs
搞不明白如何将vbs变量传递给cmd变量,算了,用for...('cscript.exe..)..来取了 用法:cmd下 del_day 5 删除文件修改时间为5天前的文件,测试,删除操作务必谨慎 代码:
@echo off >t_day.vbs echo ' Yesterday.vbs, Version 1.01 >>t_day.vbs echo ' >>t_day.vbs echo ' Written by Rob van der Woude >>t_day.vbs echo ' http://www.robvanderwoude.com >>t_day.vbs echo ' >>t_day.vbs echo ' Calculate yesterday's date >>t_day.vbs echo dtmYesterday = DateAdd("d",-%1,Date) >>t_day.vbs echo ' >>t_day.vbs echo ' Get yesterday's year >>t_day.vbs echo strYear = DatePart("yyyy",dtmYesterday) >>t_day.vbs echo ' >>t_day.vbs echo ' Get yesterday's month, add leading zero if necessary >>t_day.vbs echo If DatePart("m",dtmYesterday) ^< 10 Then >>t_day.vbs echo strMonth = 0 ^& DatePart("m",dtmYesterday) >>t_day.vbs echo Else >>t_day.vbs echo strMonth = DatePart("m",dtmYesterday) >>t_day.vbs echo End If >>t_day.vbs echo ' >>t_day.vbs echo ' Get yesterday's day, add leading zero if necessary >>t_day.vbs echo If DatePart("d",dtmYesterday) ^< 10 Then >>t_day.vbs echo strDay = 0 ^& DatePart("d",dtmYesterday) >>t_day.vbs echo Else >>t_day.vbs echo strDay = DatePart("d",dtmYesterday) >>t_day.vbs echo End If >>t_day.vbs echo ' >>t_day.vbs echo ' Format output for yesterday >>t_day.vbs echo strYest = strYear ^& strMonth ^& strDay >>t_day.vbs echo ' >>t_day.vbs echo ' echo >>t_day.vbs echo Wscript.echo( strYest ) @echo on for /f "delims=" %%i in ('cscript.exe //nologo t_day.vbs') do set t_day=%%i setlocal ENABLEDELAYEDEXPANSION for /r %%i in (*.*) do set c_day=%%~ti && if "!c_day:~0,2!!c_day:~3,2!!c_day:~6,2!" lss "%t_day:~2,6%" del /q "%%i" endlocal cls @echo ========================= @echo 删除完毕. @echo ========================= |
||
![]() 待认证激活
|
强,收藏以备后用!
小问题,所谓文件修改时间为n天前的文件,是指什么?如果是n天前创建的文件一直未修改呢? |
||
![]() NearbyFeed基于地点的社交网络iPhone和Android应用程序,欢迎到App Store和Android Market下载使用nearbyfeed.com |
![]() 待认证激活
|
刚看了一下,TC好像也可以
search->plugin tab->search in plugins tc--creationdata--<=04/23/2005 tc--writedata-->04/23/2005 tc--writedata--<=04/24/2005 |
||
![]() 支柱会员
|
引用:
如一直未修改,创建时间=修改时间 |
|||
![]() 支柱会员
|
引用:
想知道xxx天前是几月几号。。tc没有明示 不利于自动化工作,嘿嘿 ![]() 不可以..就是不可以.. :blush; 再可以我要撞墙了 |
|||
![]() 初级会员
|
谢谢,我想扩展一下,可是VB一头污水啊。
![]() 因为目录较多,且不同的目录特权不同。。有些目录是不管的,所以我试验了以后,觉得还是做一个定义文件,按定义文件的要求来删除。。 |
||
![]() 终极会员
|
让 TouchPro 干这事不错
|
||
![]() 核心会员
|
一直使用ACDSEE
|
||
![]() 初级会员
|
请问这个yesterday.vbs是哪来的呀?俺vb实在不行,只好又装上DevCPP自已编一个了。
|
||
![]() 超级会员
|
这么麻烦?
用 find 命令简单的狠。不过是 gnu find。在 Native Win32 ports of some GNU Utilities 包里 |
||
![]() 核心会员
|
经典,不过大家的回帖也给我启发很多。
此贴收藏 |
||
![]() 初级会员
|
谢谢,太谢谢,
|
||
![]() 初级会员
|
测试中发现新问题,
find D:\FTP\临时交流\文档 ! -mtime -25 -exec rm {} ; find D:\FTP\临时交流\文档 ! -mtime -25 -exec rmdir {} ; 空目录删不去,因为删除文件时,目录的时间变了,结果就删不去,有没有专删空目录的命令? |
||
![]() 支柱会员
|
引用:
for /l %a in (1,1,9) do for /r %i in (.) do rd %~si |
|||
![]() 核心会员
|
norton 里带一个修改文件和目录时间的小程序,也比较方便。
|
||