PowerShell脚本上午检查

时间:2018-10-03 08:00:48

标签: windows powershell

我有下面的脚本,该脚本专门针对HP服务器运行,以识别Windows事件日志中是否存在磁盘错误,然后发送电子邮件,其中包含日志中的消息或没有要报告的消息。问题是,在测试脚本时,要么在我知道有脚本时始终不报告任何内容(如果我可以找到日志中可以看到的内容),要么从完全不同的日志中打印出一条消息。

foreach ($Server in $servers) { 
    $event = Get-EventLog -ComputerName $server -LogName "system" -After ([DateTime]::Today)

    if ($event.Source -eq "HP Smart Array" -or $event.Source -eq "HpCISSs2" -or $event.Source -eq "disk") {  
        $body += Write-Output "Server $server has an error $($event.Message)         `n"  ForegroundColor Red
    } else {
        $body += Write-Output "Server $server has nothing to report           `n"
    }     
}

2 个答案:

答案 0 :(得分:1)

您的Go to Google Create Webdriver Chrome executable_path=C:\\Python27\\chromedriver.exe Open Browser https://google.com Chrome Maximize Browser Window 变量包含元素数量。您不能仅将它们与$event运算符进行比较。您可以改用-eq方法。像这样:

.Contains()

答案 1 :(得分:-1)

为事件添加另一个“ foreach”:

foreach ($Server in $servers) {
    $events = Get-Eventlog .......
    foreach ($event in $events) {
        if ($event.Source ......