vbs 定时删除功能实现代码
参考代码一:
复制代码 代码如下:Function DeleteLog( ) Dim objFSO, objFolder, strPath, targetFSO, subFSO, DirPath DirPath = createobject("Scripting.FileSystemObject").GetFile(Wscript.ScriptFullName).ParentFolder.Path&"\Log\" Set objFSO = CreateObject("Scripting.FileSystemObject"http://www.devze.com) Set targetFSO = objFSO.GetFoldernIeXnWt(DirPath) Set subFSO = targetFSO.SubFoldersFor Each subF编程客栈older in SubFSO
If DateDiff("d", subFolder.name, date)>3开发者_C学习 Then strPath = DirPath&subFolder.name objFSO.DeleteFolder(strPath) End If NextEnd Function Call DeleteLog( )这样在task Schdeuler里面schedule我的vbs程序就没有报错啦。撒花,结贴~~参考代码二:
复制代码 代码如下:
Dim dqxs, dqrq, szxs, szfz, dqml, datpDim jclbDim cdim d'=========================================================datp = "F:"szxs = "7:00:"wjml = datp & "\DVRDat\"sykj = 20000000000 '20个Gdqml = left(wscript.scriptfullname,instrrev(wscript.scriptfullname,"\")-1)jclb = "ServicesManager.exe,PD_Server.exe,SpeedServer.exe,CoreServer.exe,DownloadSVC.exe,ManagerConsole.exe,Gptsvr.exe,HintAMProxy.exe,FileServer.exe,CleanDisk.exe,GetNetData.exe,SGUClient.exe,SGUServer.exe,"set WshShell = WScript.CreateObject("WScript.Shell")Set fso = Wscript.CreateObject("Scripting.FileSystemObject")'=========================================================if fso.GetDrive(datp).FreeSpace < sykj then canIeXnWtll cprlqldo If InStr(time, szxs) <> 0 Then if fso.GetDrive(datp).FreeSpace < sykj then call cprlql end ihttp://www.devze.comf WScript.Sleep(60*1000)loopgetfso=fso.GetFolder("c:\\windows").DateCreated
'===========================================================Function cprlql Dim strline, scml WshShell.run "cmd /c dir " & wjml &" /ad /b /tc>c:\dir.log",0 if fso.FileExists("c:\dir.log") then Set objFile = fso.OpenTextFile("c:\dir.log") do until objFile.atendofstream strline = objFile.readline scml = wjml & strline WshShell.run "cmd /c rd /s /q " & scml,0 for i = 1 to 20 if fso.GetDrive(datp).FreeSpace > sykj then exit Function if fso.FolderExists(scml) then WScript.Sleep(1000) else exit for end if next if fso.GetDrive(datp).FreeSpace > sykj then exit Function loop end ifEnd Function
精彩评论