首页 电脑 电脑学堂 查看内容

扩展dir命令的vbs脚本

2009-9-22 10:21 785 0

摘要: 'CMD下的dir好像没法列出从某段时间到某段时间的文件,所以写了这个小东东 set Arg=Wscript.ArgumentsIf Arg.Count=0 then Wscript.echo c...
关键词: thePath Wscript str FormatPath curFolders myFile Function DirTotal then vbCrLf

'CMD下的dir好像没法列出从某段时间到某段时间的文件,所以写了这个小东东 set Arg=Wscript.ArgumentsIf Arg.Count=0 then Wscript.echo chr(9)&chr(9)&space(4)&"Xdir v0.1"Wscript.echo ""Wscript.echo chr(9)&"cscript dir.vbs path time1 time2 ext"Wscript.echo chr(9)&"cscript dir.vbs d:\test 20080101 20080430 doc"Wscript.QuitEnd IfPath=Arg(0)Time1=Arg(1)Time2=Arg(2)Ext=Arg(3)FileTotal = 0 DirTotal = 0 FileTotalsize=0TimeSpend = Timer myFind PathTimeSpend = round(Timer - TimeSpend,2) txtResult = "搜索完成!" & vbCrLf & "共找到文件:" & FileTotal & "个." & vbCrLf & "共搜索目录:" & DirTotal & "个." &vbcrlf&"文件总数大小"&FormatNumber(FileTotalsize/1024,0)&"kB"& vbCrLf & "用时:" & TimeSpend & "秒." wscript.echo txtResult Sub myFind(ByVal thePath)    Dim fso, myFolder, myFile, curFolder Set fso = wscript.CreateObject("scripting.filesystemobject") Set curFolders = fso.getfolder(thePath) DirTotal = DirTotal + 1 If curFolders.Files.Count > 0 Then For Each myFile In curFolders.Files If InStr(1, LCase(Fso.GetExtensionName(myFile.Name)), ext) > 0 And Gtime(myFile.DateCreated) >Time1 And Gtime(myFile.DateCreated)<Time2 Then wscript.echo FormatPath(thePath) & "\" & myFile.Name FileTotal = FileTotal + 1 FileTotalsize = FileTotalsize + myFile.size End If Next End If    If curFolders.subfolders.Count > 0 Then For Each myFolder In curFolders.subfolders myFind FormatPath(thePath) & "\" & myFolder.Name   Next End If End Sub Function FormatPath(ByVal thePath) thePath = Trim(thePath) FormatPath = thePath If Right(thePath, 1) = "\" Then FormatPath = Mid(thePath, 1, Len(thePath) - 1) End Function Function Gtime(str)str=FormatDateTime(str,2)str1=Split(str,"-",-1,1)If len(str1(1))=1 then str11="0"&str1(1)If len(str1(2))=1 then str12="0"&str1(2)Gtime=str1(0)&str11&str12End Function
声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系 [邮箱地址] 删除

路过

雷人

握手

鲜花

鸡蛋

最新评论

返回顶部