Finding and Cleaning Unused Computers in Active Directory
PS:
Import-Module activedirectory # Parametreler girelim. $domain = “guler.com” $DaysInactive = 180 $time = (Get-Date).Adddays(-($DaysInactive)) $date = Get-Date ($time) -UFormat %d.%m.%y $File = “c:\Inactive_Computers.csv” # Son 180 günde oturum açılmamış bilgisayarları $file yolundaki dosyaya listeler $CompList = Get-ADComputer -Filter {LastLogonTimeStamp -lt $time -and operatingSystem -notlike “*server*”} -SearchBase “DC=guler, DC=com” -Properties Name,LastLogonTimeStamp,OperatingSystem | Select-Object Name, OperatingSystem, @{Name=”Last Logon TimeStamp”; Expression={[DateTime]::FromFileTime($_.lastLogonTimestamp)}} | Export-Csv $File -encoding UTF8 -notypeinformation # Son 180 günde oturum açılmamış bilgisayarların isimlerini toplar $Computers = Get-ADComputer -Filter {LastLogonTimeStamp -lt $time -and operatingSystem -notlike “*server*”} -SearchBase “DC=guler, DC=com” -Properties Name,LastLogonTimeStamp,OperatingSystem | Select-Object -ExpandProperty Name # Toplanan bilgisayarları domainden siler. Silinenleri ve silinmeyenleri loglar ForEach ($Computer in $Computers) { Try { Remove-ADComputer -Identity $Computer -ErrorAction Stop -confirm:$false Add-Content C:\removed-computers.log -Value “$Computer silindi” } Catch { Add-Content C:\not-removed-computers.log -Value “$Computer bulunamadi $($Error[0])” } }
Faydalı olması dileğiyle. – Hope it’s useful.
This post is licensed under CC BY 4.0 by the author.