PowerShell: обновление массовых атрибутов O365 AD с помощью файла CSV - PullRequest
0 голосов
/ 01 октября 2019

Мы пытаемся массово обновить наш Azure Active Directory. У нас есть список csv в Excel с именами UserPrincipalNames, которые мы обновим атрибуты Title, Department и Office

# Get List of Clinical CMs
$PATH = "C:\Users\cs\Documents\IT Stuff\Project\Azure AD Update\AD-Update-ClinicalCMs-Test.csv"
$CMs = Import-csv $PATH

# Pass CMs into Function
ForEach ($UPN in $CMs) {
# Do AD Update Task Here
Set-Msoluser -UserPrincipalName $UPN -Title "Case Manager" -Department "Clinical" -Office "Virtual"
}

CSV:

User.1@domain.com
User.2@domain.com
User.3@domain.com

Команда Set-MsolUser будет работать на еесобственный, но он не работает, как задумано в этом цикле For. Любая помощь или понимание очень ценится

1 Ответ

0 голосов
/ 02 октября 2019

Как прокомментировал Джим Сюй , здесь мой комментарий в качестве ответа.

Входной файл, который вы показываете нам, не является CSV-файлом, а представляет собой список значений UPN на всехотдельной строкой.

Чтобы прочитать эти значения как строковый массив, проще всего использовать Get-Content:

$PATH = "C:\Users\cs\Documents\IT Stuff\Project\Azure AD Update\AD-Update-ClinicalCMs-Test.csv"
$CMs = Get-Content -Path $PATH

Конечно, несмотря на значительное перерасход, может сделать с помощью командлета Import-Csv:

$CMs = (Import-Csv -Path $PATH -Header upn).upn
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...