Powershell将变量传递给带括号的其他变量
Powershell passing variables into other variables with parentheses
抱歉,标题令人困惑,但这是我在不在标题中发布代码的情况下描述它的最佳方式。我尝试获取 $MajorCode 变量并将其放入 $filter 变量中。这样输出看起来像
{((customattribute5 -eq "CurrentStudent") -AND (customattribute3 -eq "2101"))}
NOT
{((customattribute5 -eq "CurrentStudent") -AND (customattribute3 -eq $MajorCode))}
CSV 看起来像这样:
Name Alias EmailAddress code
DDL-PayPal PayPal PayPal0@test.test 2101
完整代码是这样的:
$groups = Import-Csv -Path .\Book2.csv
foreach
($group in $groups)
{
$MajorCode = $group.code
$Filter = {{((customattribute5 -eq "CurrentStudent") -AND (customattribute3 -eq $MajorCode))}}
New-DynamicDistributionGroup -Name $group.Name -Alias $group.Alias -RecipientFilter $filter
}
继续我的评论,RecipientFilter
应该是一个 字符串 ,特别是如果它包含一个变量,而不是 scriptblock
尝试
$Filter = "(customattribute5 -eq 'CurrentStudent') -AND (customattribute3 -eq '$MajorCode'")
在整个字符串周围使用双引号,以便扩展内部变量。在里面,使用单引号
抱歉,标题令人困惑,但这是我在不在标题中发布代码的情况下描述它的最佳方式。我尝试获取 $MajorCode 变量并将其放入 $filter 变量中。这样输出看起来像
{((customattribute5 -eq "CurrentStudent") -AND (customattribute3 -eq "2101"))}
NOT
{((customattribute5 -eq "CurrentStudent") -AND (customattribute3 -eq $MajorCode))}
CSV 看起来像这样:
Name Alias EmailAddress code
DDL-PayPal PayPal PayPal0@test.test 2101
完整代码是这样的:
$groups = Import-Csv -Path .\Book2.csv
foreach
($group in $groups)
{
$MajorCode = $group.code
$Filter = {{((customattribute5 -eq "CurrentStudent") -AND (customattribute3 -eq $MajorCode))}}
New-DynamicDistributionGroup -Name $group.Name -Alias $group.Alias -RecipientFilter $filter
}
继续我的评论,RecipientFilter
应该是一个 字符串 ,特别是如果它包含一个变量,而不是 scriptblock
尝试
$Filter = "(customattribute5 -eq 'CurrentStudent') -AND (customattribute3 -eq '$MajorCode'")
在整个字符串周围使用双引号,以便扩展内部变量。在里面,使用单引号