Creating an OU
Creating an OU is a fairly common activity. The GUI is quick enough for a single OU but we need PowerShell for bulk creation.
Its a straight forward activity
if (-not (Get-Module ActiveDirectory)){
Import-Module ActiveDirectory
}
$ou = "OU=BlogTests,DC=Manticore,DC=org"
"`nMicrosoft"
$name = "OUM"
New-ADOrganizationalUnit -Path $ou -Name $name
"`nAD provider"
$name = "OUP"
New-Item -Path AD:\$ou -Name "OU=$name" -ItemType Directory
"`nQuest"
$name = "OUQ"
New-QADObject -ParentContainer $ou -Type 'OrganizationalUnit' -NamingProperty 'ou' -Name $name
"`nScript"
$name = "OUS"
$target = [adsi]"LDAP://$ou"
$user = $target.Create("organizationalunit", "ou=$name")
$user.SetInfo()
There is a Microsoft cmdlet specifically for this activity. Just give it a path and a name. The Quest cmdlet is marginally more complicated but still easy.
The script you will recognise as a variant of creating a user. This pattern works for most things in ADSI – get the parent container and use the Create() method.
The provide uses New-Item as you would expect – notice the ItemType is Directory!
Alternatively the provider supplies the ultimate shortcut code for creating an OU. Yes md (or mkdir) work
cd ad:\$ou
md "ou=testing"