自动清理IIS日志
2015-01-29 金城 1962
进入服务器界面
将下框内容复制到记事本中,存为 auto_del_iis_logs.vbs 文件。
dim fso,folder,files
set fso = CreateObject("Scripting.FileSystemObject")
dim delCount:delCount=0
dim fileCount:fileCount=0
dim dayNum:dayNum=60 '设定天数;删除60天以前的日志
ProcLogDir "G:\WebLog\"
ProcLogDir "C:\WINDOWS\system32\LogFiles\"
dim msg
title="清理IIS日志("&dayNum&"天以前)" &VBNewLine&VBNewLine
msg=title &msg
msg=msg &"·清理IIS日志完毕;"&vbnewline
msg=msg &"·共有文件" &fileCount &"个;"&vbnewline
msg=msg &"·删除" &delCount &"个。"
msgbox msg
'''''''''''''''''
set folder=nothing
set fso=nothing
'''''''''''''''''
sub ProcLogDir(baseDir)
dim folder
Set folder=fso.GetFolder(baseDir &filedir)
Set sf=folder.SubFolders
For Each f1 in sf
deletelog f1.path
Next
set sf=nothing
set floder=nothing
end sub
sub deletelog(filedir)
dim folder
Set folder=fso.GetFolder(filedir)
'''''''''''''''''
set files=folder.files
dim file,fileCount
fileCount=fileCount+files.count
For Each file in files
if (file.DateCreated<now()-dayNum) then
file.delete
delCount=delCount+1
end if
next
set files=nothing
set floder=nothing
end sub
set fso = CreateObject("Scripting.FileSystemObject")
dim delCount:delCount=0
dim fileCount:fileCount=0
dim dayNum:dayNum=60 '设定天数;删除60天以前的日志
ProcLogDir "G:\WebLog\"
ProcLogDir "C:\WINDOWS\system32\LogFiles\"
dim msg
title="清理IIS日志("&dayNum&"天以前)" &VBNewLine&VBNewLine
msg=title &msg
msg=msg &"·清理IIS日志完毕;"&vbnewline
msg=msg &"·共有文件" &fileCount &"个;"&vbnewline
msg=msg &"·删除" &delCount &"个。"
msgbox msg
'''''''''''''''''
set folder=nothing
set fso=nothing
'''''''''''''''''
sub ProcLogDir(baseDir)
dim folder
Set folder=fso.GetFolder(baseDir &filedir)
Set sf=folder.SubFolders
For Each f1 in sf
deletelog f1.path
Next
set sf=nothing
set floder=nothing
end sub
sub deletelog(filedir)
dim folder
Set folder=fso.GetFolder(filedir)
'''''''''''''''''
set files=folder.files
dim file,fileCount
fileCount=fileCount+files.count
For Each file in files
if (file.DateCreated<now()-dayNum) then
file.delete
delCount=delCount+1
end if
next
set files=nothing
set floder=nothing
end sub
然后右键编辑 auto_del_iis_logs.vbs 文件的属性,选择[脚本]选项卡,勾上 “√经过指定的秒数之后终止脚本”,下边选择30秒。点确定。(如果日志较多,删除频率较少,服务器太烂,秒数要加大点)
然后会生成 auto_del_iis_logs.wsh 文件。
再用记事本创建一个 auto_del_iis_logs.bat 文件,内容如下框:(涉及的路径改成自己的)
@echo off
%SystemRoot%\System32\WScript.exe "D:\batch\auto_del_iis_logs.wsh" %*
exit
%SystemRoot%\System32\WScript.exe "D:\batch\auto_del_iis_logs.wsh" %*
exit
再运行cmd命令打开命令行窗口,使用 at 命令将 auto_del_iis_logs.bat 加入到计划任务中
C:\Documents and Settings\Administrator>at 3:00 /every:su d:\batch\auto_del_iis_logs.bat
新加了一项作业,其作业 ID = 26
C:\Documents and Settings\Administrator>
新加了一项作业,其作业 ID = 26
C:\Documents and Settings\Administrator>
- 上一篇:destoon 增加js合并功能
- 下一篇:OneThink独立模型应用一例