Gå til innhold

[Løst] Flytting av Datamaskiner til en annen OU i AD


Anbefalte innlegg

Prøver å snekre sammen et script som deaktiverer og flytter gamle Datamaskiner i AD, alt fungerer utenom den siste biten hvor scriptet flytter de gamle PC-ene til en annen OU.

 

Jeg er ikke en powershell ekspert, tvert i mot. Så det ble litt googling for å få dette til.

 

Ønsker derfor litt hjelp med det siste :)

Import-Module ActiveDirectory

$then = (Get-Date).AddDays(-90) #90 er antall dager siden datamaskinen var sist logget på.
$log = "C:\Script_logs\OldComputers-$(get-date -f dd-MM-yyyy).log"
$target = "OU=Disabled Datamaskiner,DC=domenet"

Get-ADComputer -SearchBase "OU=Datamaskiner,DC=domenet" -Property Name,lastLogonDate -Filter {lastLogonDate -lt $then} | FT Name,lastLogonDate | Out-File $log

#For å deaktivere datamaskiner:
Get-ADComputer -SearchBase "OU=Datamaskiner,DC=domenet" -Property Name,lastLogonDate -Filter {lastLogonDate -lt $then} | Set-ADComputer -Enabled $false
Get-ADComputer -SearchBase "OU=Datamaskiner,DC=domenet" -Property Name,lastLogonDate -Filter {lastLogonDate -lt $then} | Set-ADComputer -Description "Deaktivert: $(get-date -f dd-MM-yyyy)"
Get-ADComputer -SearchBase "OU=Datamaskiner,DC=domenet" -Property Name,lastLogonDate -Filter {lastLogonDate -lt $then} | Move-ADobject -TargetPath "OU=Disabled Datamaskiner,DC=domenet"


Lenke til kommentar
Videoannonse
Annonse

 

Prøver å snekre sammen et script som deaktiverer og flytter gamle Datamaskiner i AD, alt fungerer utenom den siste biten hvor scriptet flytter de gamle PC-ene til en annen OU.

 

Jeg er ikke en powershell ekspert, tvert i mot. Så det ble litt googling for å få dette til.

 

Ønsker derfor litt hjelp med det siste :)

Import-Module ActiveDirectory

$then = (Get-Date).AddDays(-90) #90 er antall dager siden datamaskinen var sist logget på.
$log = "C:\Script_logs\OldComputers-$(get-date -f dd-MM-yyyy).log"
$target = "OU=Disabled Datamaskiner,DC=domenet"

Get-ADComputer -SearchBase "OU=Datamaskiner,DC=domenet" -Property Name,lastLogonDate -Filter {lastLogonDate -lt $then} | FT Name,lastLogonDate | Out-File $log

#For å deaktivere datamaskiner:
Get-ADComputer -SearchBase "OU=Datamaskiner,DC=domenet" -Property Name,lastLogonDate -Filter {lastLogonDate -lt $then} | Set-ADComputer -Enabled $false
Get-ADComputer -SearchBase "OU=Datamaskiner,DC=domenet" -Property Name,lastLogonDate -Filter {lastLogonDate -lt $then} | Set-ADComputer -Description "Deaktivert: $(get-date -f dd-MM-yyyy)"
Get-ADComputer -SearchBase "OU=Datamaskiner,DC=domenet" -Property Name,lastLogonDate -Filter {lastLogonDate -lt $then} | Move-ADobject -TargetPath "OU=Disabled Datamaskiner,DC=domenet"


Alt ser riktig ut her utenom en skrivefeil på nederste linjen som flytter objektet. Move-ADobject -> Move-ADObject.
 
Her er det jeg benytter: variabelen er innhold fra en textfil med pcer jeg vil deaktivere. Men vi bruker basicly akkurat det samme som jeg kan se.
Move-ADObject $ADcomputer -targetpath "ou=Disabled Computers,ou=Clients,dc=domain,dc=local"
Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...