当前位置: 首页 > 图文教程 > 脚本技术 > VBScript > 定时自动备份IIS的WWW日志的vbs脚本

VBScript
VBS中SendKeys的基本应用
VBScript教程 第十四课在VBScript中使用对象
VBScript教程 第十三课 VBScript与窗体
VBScript教程 第十二课VBScript页面的简单样例
VBScript教程 第十一课深入VBScript
VBScript教程 第十课 VBScript编码约定
VBScript教程 第九课VBScript过程
VBScript教程 第八课 使用循环语句
VBScript教程 第七课使用条件语句
VBScript教程 第六课VBScript运算符
VBscript教程 第五课 VBScript常数
VBScript教程 第四课VBScript变量
VBScript教程 第三课VBScript数据类型
VBScript教程 第二课在HTML页面中添加VBscript代码
VBScript教程 第一课什么是VBScript
VBScript的入门学习资料
VBScript语法速查及实例说明
MsgBox函数语言参考
VBS教程:正则表达式简介 -后向引用
VBS教程:正则表达式简介 -选择与编组

VBScript 中的 定时自动备份IIS的WWW日志的vbs脚本


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-11   浏览: 60 ::
收藏到网摘: n/a

dim IISCount,IISObject,logfiledir,fso,LogFilePeriods,inputtime,site,sites,i,j,sitename(999),WshShell
'on error resume next
set WshShell = WScript.CreateObject("WScript.Shell")
Set fso = CreateObject("scripting.FileSystemObject")
set IISCount=GetObject("IIS://localhost/w3svc")
sites=0
for each site in IISCount
if (site.class="IIsWebServer") then
sitename(sites)=site.name
sites=sites+1
end if
next
MsgBox "IIS中一共" & sites & "个站点,ID分别为:"
for j=1 to sites-1
MsgBox sitename(j)
next
inputtime=inputbox("您要备份哪天的日志?如备份2004-01-01,则输入040101")
MsgBox "备份" &inputtime& "天的日志"
MsgBox "开始备份.............."
for i=0 to sites-1
Set IISOBJect = GetObject("IIS://localhost/w3svc/" & sitename(i))
MsgBox "备份ID=" & sitename(i) &" Sitename=" & IISObject.servercomment &"的站点"
logfiledir = IISObject.LogFileDirectory & "w3svc" & sitename(i)'设置第一个站点的日志路径
if (Err.Number<>0) then logfiledir=IISCount.LogFileDirectory
Err.clear
'if IISObject.LogFilePeriod=1 then LogFilePeriods="days"
'if IISObject.LogFilePeriod=2 then LogFilePeriods="weeks"
'if IISObject.LogFilePeriod=3 then LogFilePeriods="months"
'if IISObject.LogFilePeriod=4 then LogFilePeriods="hours"
'if IISObject.LogFilePeriod=0 AND IISObject.LogFileTruncateSize=-1 then LogFilePerirods="onefile"
'if IISObject.LogFilePeriod=0 AND IISObject.LogFileTruncateSize>0 then LogFilePerirods="size"&IISObject.LogFileTruncateSize
LogFilePeriods=IISObject.LogFilePeriod
if (Err.Number<>0) then LogFilePeriods=IISCount.LogFilePeriod
Err.clear
if (NOT LogFilePeriods=1 AND NOT LogFilePeriods=4) then
MsgBox "对不起,您的日志偶就不给备份,咋地吧"
WScript.quit
end if
if (NOT fso.folderexists("d:backup")) then
MsgBox "the folder d:backup is not exist,now create it"
fso.CreateFolder("d:backup")
Msgbox "created d:backup succuful"
end if
if (NOT fso.FolderExists("d:backup"&IISObject.servercomment)) then
MsgBox "the folder d:backup" & IISObject.servercomment & " is not exist,now create it"
fso.CreateFolder("d:backup" & IISObject.servercomment)
MsgBox "created d:backup" & IISObject.servercomment &" succuful"
end if
MsgBox "now backup the logfiles"
logfiledir = WshShell.ExpandEnvironmentStrings(logfiledir) '将环境变量转换成字符串
MsgBox logfiledir
fso.Copyfile logfiledir &"ex"&inputtime&"*","d:backup"& IISObject.servercomment
if Err.number<>0 then
MsgBox "this site no files"
else
MsgBox "backup logfiles succuful"
end if
inputifdel=inputbox("是否删除已备份文件?输入“YES”进行删除")
if inputifdel="YES" then
fso.DeleteFile (logfiledir&"ex"&inputtime&"*")
MsgBox "删除文件成功"
else
MsgBox "文件已保留"
end if
next
MsgBox "备份所有的日志文件成功,嘿嘿"