Power Shell错误捕获

时间:2015-10-20 16:18:51

标签: powershell exchange-server office365

我无法弄清楚为什么在运行针对office365的脚本时,powershell不会捕获错误(Exchange online)。我每次都会收到原始错误消息,尽管我尝试使用try和catch块。

Foreach ($groups in $groups)
{
try 
{
    Add-DistributionGroupMember "$Groups" -Member "$UserName" -BypassSecurityGroupManagerCheck -ErrorAction Stop
    #write-host "Added user $userName to $Groups";
}

Catch 
{
    Write-Output "`t   $userName is already a member of $Groups."   
}

}

1 个答案:

答案 0 :(得分:0)

这里有同样的问题。我们看到了错误块,但没有看到catch中的自定义错误消息。

我需要陷阱当用户无法添加(找不到用户)或任何其他特定错误并将这些帐户转储到CSV文件时...

编辑: 当然,我发布这个的那一刻,我找到答案...添加-ErrorAction STOP使其正常工作,否则它只是显示消息,我猜不会返回错误代码...实际的消息可以使用此Catch捕获

Catch{
    Echo $User $_.exception.Message
}