Go Premium for a chance to win a PS4. Enter to Win

x
?
Solved

Is there a script to move all disabled AD accounts over to a specified OU?

Posted on 2014-11-21
10
Medium Priority
?
205 Views
Last Modified: 2014-12-12
I have multiple sites/OU and each one have disabled accounts that i would want to automatically move to a different OU. Is there a Powershell script for this?
0
Comment
Question by:CiscoAzn
  • 5
  • 3
  • 2
10 Comments
 
LVL 29

Expert Comment

by:becraig
ID: 40457949
Here is an easy one, includes the creation of the OU in the event you do not yet have the destination OU created:
#Import AD Module
Import-Module ActiveDirectory

#Check for existence of OU and create if not present
[string] $Path = 'OU=StaleComputers,DC=domain,DC=com'
try
{
	if (!([adsi]::Exists("LDAP://$Path")))
	{
		#Create OU since it does not yet exist
		NEW-ADOrganizationalUnit “StaleComputers” –path “DC=domain, DC=com”
	}
	else { Write-Debug "OU Already Exists:  $Path" }
}
catch [Exception]    {
	return $_.Exception.Message
}


#now we proceed to check for computers
Get-ADComputer -Filter { Enabled -eq $false } | Move-ADObject -TargetPath $Path -WhatIf

Open in new window



If you already have the OU then this will work:


 $Path = 'OU=StaleComputers,DC=domain,DC=com'
Get-ADComputer -Filter { Enabled -eq $false } | Move-ADObject -TargetPath $Path -WhatIf

Open in new window


Remove the whatif to actually run.
0
 

Author Comment

by:CiscoAzn
ID: 40458011
What about pointing to a specific OU for the source of all the sites with the disabled accounts and the destination would the $Path. I don't want to run it for the entire domain.
0
 
LVL 29

Accepted Solution

by:
becraig earned 2000 total points
ID: 40458032
$Path = 'OU=StaleComputers,DC=domain,DC=com'
Get-ADComputer -Filter { Enabled -eq $false } -SearchBase "OU=computerOU,OU=Company,DC=domain,DC=com"  | Move-ADObject -TargetPath $Path -WhatIf

Open in new window


For multiple OUs you can either input them directly and pipe into a foreach loop. (similar to your previous question)


$OUs = 'OU=Users1,OU=Company,DC=domain,DC=com','OU=Users2,OU=Company,DC=domain,DC=com','OU=Users3,OU=Company,DC=domain,DC=com'

$OUs | % { Get-ADComputer -Filter { Enabled -eq $false } -SearchBase $_  | Move-ADObject -TargetPath $Path -WhatIf}

Open in new window

0
Technology Partners: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 

Author Comment

by:CiscoAzn
ID: 40458167
I did a test and found out why it didn't work. Had to change from ADComputer to ADUser so this works perfectly thanks!
0
 
LVL 29

Expert Comment

by:becraig
ID: 40458183
No prob, yeah I'd actually done this for computers on another question and just copy and pasted.
0
 
LVL 29

Expert Comment

by:becraig
ID: 40460168
Did you need anything else on this question ?

If so let me know and I will be happy to help.
0
 
LVL 1

Expert Comment

by:Satyendra Tiwari
ID: 40468740
Hi Cisco,
You can download the complete script from this given resource and I hope, it will help you to resolve your purpose for moving all disabled AD accounts to specific OU : https://gallery.technet.microsoft.com/scriptcenter/Move-and-disable-inactive-b1cf86c3
0
 
LVL 29

Expert Comment

by:becraig
ID: 40468747
This question was indicated as answered in comment 40458167
0
 
LVL 1

Expert Comment

by:Satyendra Tiwari
ID: 40468754
This question was indicated as answered in comment 40458167

Ok, i did not see that.
0
 

Author Comment

by:CiscoAzn
ID: 40496585
becraig I want to run this as a scheduled task and not able to. Do you have a way to do this? What is the Action that needs to be input to have this working?
0

Featured Post

What does it mean to be "Always On"?

Is your cloud always on? With an Always On cloud you won't have to worry about downtime for maintenance or software application code updates, ensuring that your bottom line isn't affected.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

There are times when we need to generate a report on the inbox rules, where users have set up forwarding externally in their mailbox. In this article, I will be sharing a script I wrote to generate the report in CSV format.
In the absence of a fully-fledged GPO Management product like AGPM, the script in this article will provide you with a simple way to watch the domain (or a select OU) for GPOs changes and automatically take backups when policies are added, removed o…
This Micro Tutorial hows how you can integrate  Mac OSX to a Windows Active Directory Domain. Apple has made it easy to allow users to bind their macs to a windows domain with relative ease. The following video show how to bind OSX Mavericks to …
Attackers love to prey on accounts that have privileges. Reducing privileged accounts and protecting privileged accounts therefore is paramount. Users, groups, and service accounts need to be protected to help protect the entire Active Directory …

916 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question