我想删除 IIS 上由 Silverlight 应用程序创建的日志文件,方式是服务器检查超过“n”天的日志文件并自动删除它们。
IIS 中是否有任何配置可以执行此任务,或者我应该为其编写自己的实用程序?
答案1
据我所知,没有配置开关。您可以使用以下 Powershell 脚本删除 C:\WIN2003\system32\LogFiles\SMTPSVC1 和 C:\WIN2003\system32\LogFiles\W3SVC1 中超过 7 天的日志文件。
dir C:\WIN2003\system32\LogFiles\SMTPSVC1 |? {$_.LastWriteTime -lt (get-date).AddDays(-7)} | del
dir C:\WIN2003\system32\LogFiles\W3SVC1 |? {$_.LastWriteTime -lt (get-date).AddDays(-7)} | del
C:\WIN2003\system32\WindowsPowerShell\v1.0\powershell.exe -file C:\Batch\cleanupLogfiles.ps1
然后每天将其作为计划任务启动一次。在目录中运行命令C:\WIN2003\system32\WindowsPowerShell\v1.0
。对于这个例子,我假设你的 windows 安装在C:\WIN2003
并且你的脚本是C:\Batch\cleanupLogfiles.ps1