我正在尝试将 UPN 列表传递给一个函数,以在 Azure WVD 中查找分配给该 UPN 的所有会话主机(虚拟机)。我想将这些会话主机名称与我正在通过的列表中的 UPN 匹配,这超出了我目前的技能水平。感谢任何可以帮助我的人。
输入看起来像这样。
email1
email2
输出看起来像这样。
vmname1
vmname2
othervmname1
othervmname2
我希望能够弄清楚的输出是创建一个数组或其他东西,其中有两列 id 具有如下输出:
email1 : vmname1
email1 : vmname2
email2 : othervmname1
email2 : othervmname2
我的代码如下。
Add-RdsAccount -DeploymentUrl "https://rdbroker.wvd.microsoft.com" | Out-Null
$upnlist = get-content -path c:\path\to\upnlist.txt
#Function to find the session hosts the user is a part of in the WVD Fall 2019 environment.
function Get-FallSessionName {
$Tenants = "tenant,tenant2,tenant3"
ForEach ($upn in $upnlist) {
ForEach ($Tenant in $Tenants) {
$Hostpools = (Get-RdsHostPool -TenantName $Tenant).HostPoolName
foreach ($Hostpool in $Hostpools) {
(Get-RdsSessionHost -TenantName $Tenant -HostPoolName $Hostpool | where-object {$_.AssignedUser -eq $upn}).SessionHostName)
}
}
}
Return $SessionHostName
}
$2019SessionNames = Get-FallSessionName
$2019SessionNames | Out-GridView