У меня есть скрипт для проверки работоспособности серверов, у меня отлично работает скрипт, мне просто интересно, можно ли его оптимизировать больше, или он просто великолепен?Он ищет серверы, которые начинаются с определенного префикса, в данном случае «PreSvr *». Если он обнаруживает, что один из них запущен и работает, он останавливает обработку остальных и сообщает имя первого найденного.Если он обнаружит, что ни один из этих серверов не ответил, он скажет мне об этом.
$found = $null
$status = $false
$SvrName = "PreSvr*"
$GetSvrs = (Get-ADComputer -Filter {Name -like $SvrName}).Name
foreach ($Svr in $GetSvrs)
{
try {$Status = (Get-Service -ComputerName $Svr -Name WinRM -ErrorAction SilentlyContinue).Status} catch {$Status = $false}
IF ($Status) {$Found = $Svr;break}
}
IF ($Found) {$Svr} Else {"No Server Responded"}