0

我正在尝试使用下面的脚本从 2 列中提取,但一直收到错误消息:

Set-DistributionGroup : 操作无法执行,因为 object '@{d lgroup=group1; 在“服务器”上找不到 manager=user1}.dlgroup'

csv文件是标准组,用户组2,用户2

import-csv "dls.csv" | foreach {
   set-distributiongroup -identity "$_.dlgroup" -managedby "$_.manager"
}

@{ 是什么,为什么输出显示为 @{d lgroup=group1; 经理=user1}.dlgroup?我尝试过使用双引号来解决同样的问题

4

2 回答 2

2

删除引号:

set-distributiongroup -identity $_.dlgroup -managedby $_.manager

当您将它放在引号中时,PowerShell 会扩展嵌入在双引号字符串中的变量,并且您所看到的(例如@{...})告诉您 $_ 是一个具有两个属性的对象。

于 2013-06-18T14:29:16.923 回答
0

您可能必须使用 SubExpressions (现在还没有机会测试),所以:

Import-CSV "dls.csv" | ForFach {
    Set-Distributiongroup -identity "$($_.dlgroup)" -managedby "$($_.manager)"
}
于 2013-06-18T14:30:25.777 回答