Узнать не активных пользователей AD
Добрый день. В инете нашёл интересный код для вычисления пользователей, которые давно не заходили в домен
Код:
$date_with_offset= (Get-Date).AddDays(-45)
$users = Get-ADUser -Properties LastLogonDate -Filter {LastLogonDate -lt $date_with_offset } | Sort LastLogonDate
foreach ($user in $users) {set-aduser $user -enabled $false; move-adobject -identity $user -targetpath "ou=Уволенные,ou=Мск Л. пользователи,ou=Местоположение,dc=msk,dc=contoso,dc=com"}
Get-ADUser -Properties LastLogonDate -Filter {LastLogonDate -lt $date_with_offset } | Sort LastLogonDate | FT Name, LastLogonDate -AutoSize | Out-File c:\Script\users.txt
Код смотрит пользователей которые не заходили 45 дней и больше, отключает их, перемещает в другую OU и скидывает данные в текстовый файл на C диск.
А мне надо, всего лишь вычислить таких пользователей и записать в текстовый файл. Помогите подправить код или подскажите другое решение.
|
Код:
$date_with_offset= (Get-Date).AddDays(-45)
Get-ADUser -Properties LastLogonDate -Filter {LastLogonDate -lt $date_with_offset } | Sort LastLogonDate | FT Name, LastLogonDate -AutoSize | Out-File c:\Script\users.txt
|
Спасибо. Блин, чёт криво скрипт работает этот. Через запрос выводит 150 пользователей, а через этот скрипт всего 6-8
|
DJ Mogarych |
13-02-2020 16:46 2909421 |
Код:
Get-ADUser -Properties lastlogondate,distinguishedName -Filter "enabled -eq 'true'" |
? {$_.Lastlogondate -lt (Get-Date).Adddays(-45) -and $_.name -notmatch 'Healthmailbox'} |
select name,SAMAccountName,lastlogondate,distinguishedName | sort name |
Export-Csv "c:\temp\$(get-date -f "yyyy-MM-dd") Users not logged on for 45 days.csv" -Encoding UTF8 -Delimiter ';' -NoTypeInformation
Результат можно открыть в Экселе.
|
Время: 03:53.
© OSzone.net 2001-