# Поиск, отключение и перенос неактивных ПК и пользователей старше указанного кол-ва дней в переменной $DaysInactiveimport-module activedirectory
$Server = "MyDC01"
$OU = "OU=Company,DC=domain,DC=com"
$OUOldComputers = "OU=Computer,OU=Old objects,DC=domain,DC=com"
$OUOldUsers = "OU=Users,OU=Old objects,DC=domain,DC=com"
$DaysInactive = 45
$time = (Get-Date).Adddays(-($DaysInactive))
# Поиск старых ПК
$OldPC = Get-ADComputer -Filter {(LastLogonTimeStamp -lt $time) -AND (operatingSystem -notlike «Windows Server*»)} -Server $Server -SearchBase $OU -SearchScope Subtree -Properties LastLogonTimeStamp,description,operatingSystem | Sort Name,LastLogonTimeStamp
$OldPC | FT Name,@{N=’LastLogonTimeStamp’; E={[DateTime]::FromFileTime($_.LastLogonTimeStamp)}},operatingSystem,description
$OldPC.count
$OldPC | Disable-ADAccount
$OldPC | Move-ADObject -TargetPath $OUOldComputers
# Поиск старых Пользователей
$OldUsers = Get-ADUser -Filter {LastLogonTimeStamp -lt $time} -Server $Server -SearchBase $OU -SearchScope Subtree -Properties LastLogonTimeStamp,description | Sort Name,LastLogonTimeStamp
$OldUsers | FT Name,@{N=’LastLogonTimeStamp’; E={[DateTime]::FromFileTime($_.LastLogonTimeStamp)}},description
$OldUsers.count
$OldUsers | Disable-ADAccount
$OldUsers | Move-ADObject -TargetPath $OUOldUsers