清理IIS日志文件

管理 IIS 日志文件存储

通过脚本删除旧日志文件

您可以通过运行脚本来控制日志文件的磁盘使用情况,该脚本会自动删除超过特定年龄的日志文件。在计划任务中运行此脚本将控制磁盘填满问题,而无需持续维护。

以下 VBScript 将检查文件夹中每个日志文件的年龄,并将删除任何早于指定年龄的日志文件。要根据您的目的自定义脚本,只需在脚本的第 1 行中更改文件夹的名称和路径,并在第 2 行中将最大使用期限更改为所需的天数。

retentionscript.vbs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
sLogFolder = "c:\inetpub\logs\LogFiles"
iMaxAge = 30 'in days
Set objFSO = CreateObject("Scripting.FileSystemObject")
set colFolder = objFSO.GetFolder(sLogFolder)
For Each colSubfolder in colFolder.SubFolders
Set objFolder = objFSO.GetFolder(colSubfolder.Path)
Set colFiles = objFolder.Files
For Each objFile in colFiles
iFileAge = now-objFile.DateCreated
if iFileAge > (iMaxAge+1) then
objFSO.deletefile objFile, True
end if
Next
Next

上面的脚本将扫描所有子文件夹,因此它将处理指定文件夹中和下的所有站点的日志。如果您想将该过程限制为单个站点,请适当更改路径。

要手动运行脚本,请在管理员命令行中执行以下脚本:cscript.exe c:\scripts\retentionscript.vbs

跑vbs脚本的bat,不用再输入文件路径,只需要bat和vbs文件在同一目录就行:

cleanup.bat
1
2
3
4
5
6
7
8
@echo off
echo 当前盘符和路径:%~dp0
echo on
@cd /d %~dp0
cscript.exe retentionscript.vbs
@echo off
echo 清理日志完成
pause

出处:
Delete Old Log Files by Script

作者

zhang

发布于

2022-07-14

更新于

2023-09-19

许可协议

CC BY-NC-SA 4.0

Your browser is out-of-date!

Update your browser to view this website correctly.&npsb;Update my browser now

×