Вопросы по тегу: active-directory

(1)

Синтаксис Powershell AD - Если утверждение дублирует строку

Новый скриптер с надеждой на легкую корректуру.Я создал сценарий Powershell Active Directory, который обрабатывает людей, находящихся в отпуске (LOA) в моей организации, из ежедневного CSV-файла, который я получаю.Подводя итог, можно сказать, что мой проблемный сегмент должен: Проверьте текущий статус переменной $Line, если сотрудник находится в "Отпуске". Отключите эту учетную запись Active Directory. Возьмите поле 'Description' этой учетной записи AD и ищите строковую часть "LOA - " и добавьте ее ТОЛЬКО если она отсутствует. Проблема в том, что если это поле уже имеет "LOA - " в описании, оно помещает еще одно... и еще, и так далее.. Пример: Описание (хорошее): LOA - начальник Описание (плохое): LOA - LOA - шеф. Описание (пожалуйста, НЕТ): LOA - LOA - LOA - LOA - Шеф. И т.д. Я почти уверен, что проблема в этой строке, но я не могу понять, как ее исправить. Если ($null -ne ($newDescript | ? {$loaPhrases -notcontains $_})) $loaPhrases = "LOA -|LOA-|LOA - |LOA- |LOA - LOA - " ElseIf ($Line.currentStatus -eq "ON LEAVE") { #Добавьте 'LOA - ' в описание и отключите AD Set-ADUser $User.samAccountName -Enabled 0 'Disabled AD' $Description = Get-ADUser $User.samAccountName -Properties Description | Select-Object -ExpandProperty Description $newDescript = $Description.substring(0, $Description.IndexOf('-')+1) If ($null -ne ($newDescript | ? {$loaPhrases -notcontains $_})) { $Description = "LOA - " + "$Description" $Description = $Description.trim() Set-ADUser $user.samAccountName -Description $Description } }
b

breadgenerator

год назад

Ответов: 2

2022 WebDevInsider