У нас есть отчет (CSV), в котором перечислены компьютеры. Я хочу принять этот отчет и найти информацию OU для каждого компьютера, а затем выделить компоненты OU для лучшей сортировки. Я читаю петлю foreach из файла CSV. Затем сделайте get-adcomputer для получения DN. Оттуда я создаю массив и разбиваю DN на его части.powershell разбивает DN на отдельные строки OU
If(($lineItem.ObjectType -eq "WorkStation") -or ($lineItem.ObjectType -eq "Server"))
{
$dn = get-adcomputer -server "washdc.xyz.com" -filter 'name -eq $computer' | Select -expand DistinguishedName
$ou = $dn.Substring($Computer.Length + 7)
$domain = "Washdc"
$ou = $ou -replace ",DC=washdc,dc=xyz,dc=com",""
$ou = $ou -replace "ou=",""
$Ouarray = $ou.split(",")
For ($i=0; $i-le $ouarray.length-1;$i++) not sure what to do here?
Я хочу создать переменную для каждого подразделения (например, $ OU1, $ OU2, и т.д ...) как $ я увеличивается. Конечная цель - отменить листинг OU, чтобы он мог выводиться в формате сверху вниз ... показывая OU7, OU6, Ou5, вплоть до 0. Я делаю это слишком сложным?
Невозможно использовать свойство CanonicalName? – mjolinor
Cn просто дает мне имя пользователя? или это какая-то команда PS? – user3067193
Cn - это CommonName. CanonicalName - это другое свойство. get-adcomputer -server "washdc.xyz.com" -filter 'name -eq $ computer' -property CanonicalName | Выберите -expand CanonicalName – mjolinor