ADScripts/Disable-OldPC.ps1

31 lines
1.3 KiB
PowerShell
Raw Normal View History

2023-09-14 11:13:58 -06:00
import-module ActiveDirectory
if (!($cred)) {
$cred = Get-Credential -Message "Enter your domain admin login:"
}
2023-09-29 10:49:37 -06:00
$AgedOutDays = -270 #store this as a negative number. How many days back should the PC have changed its password
$CSVPATH = 'C:\Users\eeckert\Downloads\AD-ToDelete.csv'
$computers = get-adcomputer -filter { (Enabled -eq $True) } -properties passwordlastset | where passwordlastset -le (get-date).adddays($AgedOutDays)
2023-09-14 11:13:58 -06:00
foreach ($computer in $computers) {
$Output = 'Moving ' + $computer.name + ' to disabled OU.'
Write-Output $Output
$DescText = 'Disabled: ' + (get-date)
$computer | set-adcomputer -Enabled $false -Credential $cred -Description $DescText
$computer | move-adobject -TargetPath "OU=Computers,OU=Disabled Objects,DC=mpe,DC=ca" -Credential $cred
}
# $CSVList = import-csv $CSVPATH -ErrorAction SilentlyContinue #get list of hostnames
# foreach ($computer in $csvlist) {
# $Output = 'Moving ' + $computer.hostname + ' to disabled OU.'
# Write-Output $Output
# $computer = Get-ADComputer $computer.hostname
# $DescText = 'Disabled: ' + (get-date)
# $computer | set-adcomputer -Enabled $false -Credential $cred -Description $DescText
# $computer | move-adobject -TargetPath "OU=Computers,OU=Disabled Objects,DC=mpe,DC=ca" -Credential $cred
# }