Powershell筛选无法识别变量

Powershell筛选无法识别变量,powershell,filter,window,Powershell,Filter,Window,嗨,我有下面的代码将组分配给用户 $User1 = Read-Host -Prompt 'Enter the username of the employee you wish to change' $CountryList = Read-Host -Prompt 'Enter Country ISO - PL, CZ, HU, SE, RO' $CountryList = Read-Host -Prompt 'Enter Country ISO - USA, CZ, HU,

嗨,我有下面的代码将组分配给用户

$User1 = Read-Host -Prompt 'Enter the username of the employee you wish to change'
    $CountryList = Read-Host -Prompt 'Enter Country ISO - PL, CZ, HU, SE, 

RO'
    $CountryList = Read-Host -Prompt 'Enter Country ISO - USA, CZ, HU, SE, RO'
    Disable-AdAccount -Identity  $User1
    Set-aduser $User1 -clear manager
    Get-ADUser -Identity $User1 -Properties MemberOf | ForEach-Object {
    $_.MemberOf | Remove-ADGroupMember -Members $_.DistinguishedName -Confirm:$false |

    $Group_Name = Get-ADGroup -Filter {Name -like "*#GG-$CountryList-O365-EXCHANGE"}
    Add-ADGroupMember -Identity $Group_Name -Members $User1
}
问题是过滤器无法识别变量$CountryList


如何解决此问题?

我将在此处使用另一个变量,您将其传递到$Group\u Name:


您没有检查用户可能在Read Host中键入的任何值。如果有人进入“美国、捷克、匈牙利、东南、罗马尼亚”或“荷兰”怎么办?Get-ADGroup返回与筛选器匹配的组的集合。你应该在这些组上循环。此外,还不清楚您的组的名称。你能举个例子吗?例如GG-USA-O365-EXCHANGE,GG-CZ-O365-EXCHANGE ect?问题是这部分$Group_Name=Get-ADGroup-Filter{Name-like*GG-$CountryList-O365-EXCHANGE}中的筛选器无法识别$CountryList中的值,不知道为什么,它应该在那个国家iso@WiktorKostrzewski改用字符串筛选器:-筛选器名称-如“*GG-$CountryList-O365-EXCHANGE”
$CountryList = Read-Host -Prompt 'Enter Country ISO - USA, CZ, HU, SE, RO'
$Filter = '*#GG-'+$CountryList+"-O365-EXCHANGE"

$Group_Name = Get-ADGroup -Filter {Name -like $Filter}