1 Pluspunkt 0 Minuspunkte

Ich möchte von einem DN wie z.B

CN=TestUser,OU=Intern,OU=HR,OU=Wien,DC=DOMAIN,DC=LOCAL

nur die OU Teile extrahieren und in umgekehrter Reihenfolge anzeigen. Also z.B

Wien/HR/Intern

Wie mache ich das in Powershell?

von  

1 Antwort

0 Pluspunkte 0 Minuspunkte

Zuerst teilst du den DN anhand des Comma in ein Array und durchläufst jeden ArrayIndex. Aus den Teilen die mit "OU=" beginnen schneidest du das "OU=" heraus und erstellst daraus ein neues Array. Dieses Array drehst du um und fügst alles wieder - durch ein "/" getrennt zu einem String zusammen.

$dnParts = $_.DistinguishedName -split ","

$ouParts = @()

foreach ($part in $dnParts) {

    if ($part -like "OU=*") {
        $ouParts += $part -Replace '^OU=', '' 
    }

}

[array]::reverse($ouParts) 

$result = $ouParts -join "/"
von (884 Punkte)