我编写了以下脚本来查找具有“SolarWinds Agent”服务的服务器。
$Servers = (Get-ADComputer -Filter {(enabled -eq $true) -and (OperatingSystem -like 'Windows Server*') }).Name
$Service = 'SolarWinds Agent'
$Results = @()
foreach($i in $Servers){
if(Test-Connection $i -Count 1 -Quiet)
{
if((Get-Service $Service -ComputerName $i -ErrorAction SilentlyContinue).DisplayName -eq $Service)
{$Results += $i}
}
}
我想知道是否有更好的方法来编写代码。
尝试这样的事情:
$Servers = (Get-ADComputer -Filter "Enabled -eq 'True' -and OperatingSystem -like 'Windows Server*'").Name
$Service = 'SolarWinds Agent'
$Results = foreach ($computer in $Servers) {
if(Test-Connection $computer -Count 1 -Quiet) {
if(Get-Service -DisplayName $Service -ComputerName $computer -ErrorAction SilentlyContinue) { $computer }
}
}
如果您愿意,您实际上可以省略测试连接
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句