【发布时间】:2015-02-25 15:51:15
【问题描述】:
我需要从 CSV 文件中导入电子邮件列表,并且我必须为每个电子邮件列出它们所属的通讯组,但我无法让它工作。
我的 CSV 是一个依次排列的电子邮件地址列表:
mail1
mail2
mail3
我设法通过手动输入名称使脚本工作。 您能在从 CSV 导入\导出部分帮助我吗?
这是我目前所拥有的:
手动:
$User = read-host -Prompt "User Name"
$user_dn = (get-mailbox $user).distinguishedname
"User " + $User + " is a member of the following groups:"
foreach ($group in get-distributiongroup -resultsize unlimited) {
if ((get-distributiongroupmember $group.identity | select -expand distinguishedname) -contains $user_dn) {$group.name}
}
从进口:
$list = import-csv 1.csv
foreach ($entry in $list) {
$user = $entry
$user_dn = (get-mailbox $user).distinguishedname
"User " + $User + " is a member of the following groups:"
foreach ($group in get-distributiongroup -resultsize unlimited) {
if ((get-distributiongroupmember $group.identity | select -expand distinguishedname) -contains $user_dn) {$group.name}
}
我无法进行导出工作我收到“空管道”错误。
【问题讨论】:
-
请显示无效的代码,以及完整的错误信息。
-
我认为对于这样的项目,您需要考虑某人将如何使用您的输出结果。例如,您希望这个 CSV 看起来如何?您是否希望有这些列标题?
Username,GroupName,GroupName,GroupName,GroupName很难想象这对接收报告的最终方有何用处。 XML 列表可能会更好,这样最终用户可以展开和折叠用户以查看他们的组。我的观点:确保你想清楚了。 CSV 可能不是一个好的输出格式。
标签: powershell export-to-csv exchange-server-2010 import-from-csv