PoshCode Archive  Artifact [64a57e1416]

Artifact 64a57e141600c3b561b68fb595811c465464bee7236aa061378eb536f5eba348:

  • File AD_bulk_new_OU.ps1 — part of check-in [fde08b15d5] at 2018-06-10 13:42:32 on branch trunk — Active Directory, bulk create OU’s with defined sub OU’s (user: chriskenis size: 1133)

# encoding: ascii
# api: powershell
# title: AD_bulk_new_OU
# description: Active Directory, bulk create OU’s with defined sub OU’s
# version: 0.1
# type: script
# author: chriskenis
# license: CC0
# x-poshcode-id: 4526
# x-archived: 2013-10-21T07:54:03
# x-published: 2013-10-17T14:30:00
#
#
param(
$searchBase = "OU=Organisation,DC=uza,DC=local",
$NewOUs = @(Import-csv -Path "d:\projects\AD\departments.csv" -Delimiter ";"),
$SubOUs = @("Computers","Users"),	
[switch]$ProtectOU
)
$Protect = $false
If ($ProtectOU){$Protect = $true}

foreach ($NewOU in $NewOUs){
New-ADOrganizationalUnit -Name $NewOU.name -Description $NewOU.description -City "Antwerp" -Country "BE" -ManagedBy $NewOU.manager -State "Antwerp" -Path $searchBase -ProtectedFromAccidentalDeletion $Protect
$SubOUPath = "OU=" + $Newou.Name + "," + $searchBase
foreach ($SubOU in $SubOUs){
New-ADOrganizationalUnit -Name $SubOU -Path $SubOUPath -ProtectedFromAccidentalDeletion $Protect
}
}

#example of CSV:
# headers => Name;description;manager
# datarow => accounting;ACC;TommyLee
# datarow => human resources;HRM;WendyRatzig