$DomainControllers = "in1"
Computers = @ {}
$DomainControllers | ForEach-protestować {
Dostawać-QADComputer - SearchRoot "Developmuk/Countries/ID/Chi/Virines" - Usługiwać $ _ - SizeLimit (0) - IncludedProperties LastLogon | `
Wybierać-protestować Imię, DN, LastLogon | ForEach-protestować {
Jeżeli (Computers.$ ($_.DN)) {
Computers.$ ($_.DN) = $ _ | Wybierać-protestować Imię, DN, `
@ {n='LastLogon'; e= {
Jeżeli ($_.LastLogon - gt Computers.$ ($_.DN) .LastLogon) {
$_.LastLogon
} Inny {
Computers.$ ($_.DN) .LastLogon
}}}
} Inny {
Computers.Add ($_.DN, $_)
}
}
}
Computers.Values | ForEach-protestować {
$LastLogon = (Nowy-TimeSpan $_.LastLogon). Dzień
Jeżeli (Badać-Związek $_.Name - Zaciszność - Obliczenie 1) {
$LastBootUpTime = (Dostawać-WmiObject Win32_OperatingSystem - Komputer $_.Name) .LastBootUpTime
Jeżeli ($LastBootUpTime - ne $Null) {
$LastBootUpTime = [Management.ManagementDateTimeConverter]:: ToDateTime ($LastBootUpTime)
$Online = [Matematyka]:: .TotalHours ((Nowy-TimeSpan $LastBootUpTime) .TotalHours, 2)
}
} Inny {
$Online = (0)
}
$ _ | Wybierać-protestować Imię, @ {n='LastLogon'; e= {$LastLogon}}, @ {n='Online'; e= {$Online}}
} | Eksportować-Csv "report.csv"
|