Как автоматически изменить содержимое l oop Powershell из файла csv? - PullRequest
0 голосов
/ 10 марта 2020

Я хочу автоматически изменить содержимое l oop PowerShell из файла CSV. Кто-нибудь знает, как достичь цели?

Я хочу запустить PowerShell l oop, как показано ниже. экспорт членов группы AD UPN с файлом CSV, например One@contoso.com. Я хочу изменить Userlist на UPN автоматически, поскольку в группе более 1000 членов, и мне нужно изменить upn с one@contoso.com на 'one@contoso.com' , легко пропустить, если есть умный способ достичь цели, спасибо.

Export-ADGroupmember UPN:

Get-ADGroupmember -identity adgroup | % { get-aduser $_.samaccountname | select userprincipalname } | export-csv upn.csv -notypeinformation 

L oop PowerShell:

Loop PowerShell:
$UserList = @(
    'One@contoso.com'
    'Two@contoso.com'
    'Three@contoso.com'
    'Four@contoso.com'
    'Five@contoso.com'
    )

foreach ($UL_Item in $UserList)
    {
    $ARAGU_Params = @{
        TenantName = "contoso"
        HostPoolName = "contosoHostPool"
        AppGroupName = "Desktop Application Group"
        UserPrincipalName = $UL_Item
        }
    Add-RdsAppGroupUser @ARAGU_Params
}

1 Ответ

1 голос
/ 10 марта 2020

Вы не можете изменить содержимое в $UserList. Точнее, это возможно, но влияет на производительность, поскольку вам нужно будет прочитать файл и разбить его на сегменты. Лучший способ - это загрузить всех пользователей одновременно. Вы можете сделать это так:

$UserList=Get-ADGroupmember -identity adgroup | % { get-aduser $_.samaccountname | select userprincipalname } 
foreach ($UL_Item in $UserList)
    {
    $ARAGU_Params = @{
        TenantName = "contoso"
        HostPoolName = "contosoHostPool"
        AppGroupName = "Desktop Application Group"
        UserPrincipalName = $UL_Item.userprincipalname
        }
    Add-RdsAppGroupUser @ARAGU_Params
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...