# Wymagać Poszukiwanie CmdLets: http://www.quest.com/powershell/activeroles-server.aspx
# Wspólnota Biznesu Lista
$BU = "Finanse", "Sprzedaż", "Wprowadzać na rynek", "ONO", "Rozwój"
# The interwał między data. Produkować kolumna w the definitywny kolumna: (0) 30; 30 60, Etc.
$DateRange = 30
# Use Poszukiwanie CmdLets the użytkownik
Dostawać-QADUser - Umożliwiać - IncludedProperties lastLogonTimeStamp - SizeLimit (0) | % {
# Chwyt na dogodność dla dogodność
$LastLogon = $_.LastLogonTimeStamp
# Reset the IntervalString i Mnożnik wartość
# Zaczynać dla data pętla niż 30 dzień stary, stary 30 na 30 przepustka the pętla
$IntervalString = ""; $Multiplier = (1)
Jeżeli ($LastLogon - ne $Null) {
{
# Widzieć jeżeli the logon data być po tym jak the precyzować data
Jeżeli ($LastLogon - gt (Dostawać-Datować) .AddDays (- ($DateRange * $Multiplier))) {
# Rejestr ten wartość "(0) 30", lub "30 60", etc
$IntervalString = "$ ($DateRange * ($Multiplier - 1)) $ ($DateRange * $Multiplier)"
}
# Przyrost the mnożnik
$Multiplier++
# Until ono mieć wartość
} Podczas Gdy ($IntervalString - eq "")
} Inny {
$IntervalString = "$INTERVALSTRING"
}
# Wytwarzać the wydajność
$ _ | Wybierać-protestować DN, UserPrincipalName, DisplayName, LastLogonTimeStamp, WhenCreated,
@ {n='BusinessUnit'; e= {ForEach ($Name w $BU) {Jeżeli ($_.DN - Dopasowywać "OU=$Name, ") {$Name}}}},
@ {n='Range'; e= {$IntervalString}}
# Eksportować ono wszystko CSV using Zakładka jako delimiter
} | Eksportować-CSV "SomeFile.csv" - NoTypeInformation - Delimiter `t
|