Я хотел бы отслеживать список услуг на удаленных машинах. Эти службы не являются одинаковыми на всех удаленных компьютерах.Как контролировать список услуг на удаленных компьютерах?
Ближайшее, что у меня есть, - это отслеживать все службы, которые останавливаются на удаленных компьютерах, но я не могу найти способ сценария для отслеживания списка услуг.
Это сценарий, я работаю над:
$Date = Get-Date -Format dd-MMM-yyyy
$Time = Get-Date -Format "hh:mm:ss tt"
$Style = @"
<!DOCTYPE html>
<html>
...
"@
$ServerList = Get-Content -Path C:\temp\computers1.txt
$body = $ServerList |
Foreach-Object {
Get-Service -ComputerName $_ | Where-Object {
$_.Status -ne "Running" -and
$_.StartType -like "Automatic"
}
} |
Select-Object MachineName, Status, DisplayName, StartType |
Sort-Object -Property MachineNAme -Descending |
ConvertTo-Html
$colorTagTable = @{
Stopped = ' bgcolor="#ff0000">Stopped<';
Running = ' bgcolor="#00ff00">Running<'
}
# get possible values look them in text sorrounded by > < and replace
# them with style (pun intended).
$colorTagTable.Keys | foreach {
$body = $body -replace ">$_<", ($colorTagTable.$_)
}
ConvertTo-Html -Head $Style -Body $body | Out-File "C:\temp\srv.htm"