Exchange 2010 suprime os avisos Get-MailboxStatistics

1

Como posso suprimir os avisos do cmdlet PowerShell Get-MailboxStatistics do Exchange 2010?

Eu tentei as duas opções:

Get-MailboxStatistics -WarningAction SilentlyContinue
Get-MailboxStatistics -ErrorAction SilentlyContinue

No entanto, ainda recebo essa saída de aviso para o console sobre os usuários que não estão conectados às suas caixas de correio:

WARNING: The user hasn't logged on to mailbox ...[snipped]..., so there is no data to return. After the user logs on, this warning will no longer appear.

    
por Kev 25.02.2011 / 14:10

2 respostas

4

Eu também tentei $ WarningActionPreference="SilentlyContinue" - Isso irá definir todas as mensagens de aviso como silenciosas. Parece que algo está quebrado. Parece que há um bug.

link

    
por 28.02.2011 / 19:18
4

Eu tenho jogado com esse, tentando recriar o problema (estou no Exhcange 2007, entretanto, isso pode fazer a diferença. Eu também sou muito novo no powershell). Começando com uma nova caixa de correio, "Testy McTest" :

>get-variable |where { $_.Name -match "Preference" }

Name                           Value
----                           -----
ConfirmPreference              High
DebugPreference                SilentlyContinue
ErrorActionPreference          Continue
ProgressPreference             Continue
VerbosePreference              SilentlyContinue
WarningPreference              Continue
WhatIfPreference               False

Eu posso executar o seguinte:

>Get-MailboxStatistics "Testy McTest"
WARNING: There is no data to return for the specified mailbox 'Testy McTest', because it has not been logged on to.
>Get-MailboxStatistics -WarningAction SilentlyContinue "Testy McTest"   (No Output)
>Set-Variable WarningPreference SilentlyContinue
>Get-MailboxStatistics "Testy McTest"   (No output)
>

Isso parece funcionar normalmente. Pode valer a pena mencionar que as variáveis para as ações Erro e Aviso são, na verdade, ErrorActionPreference e WarningPreference . Não tenho certeza porque eles diferem assim.

Como solução alternativa para o comando específico na pergunta, você pode qualificar a saída com algo como:

>Get-MailboxStatistics |where { $_.LastLogonTime }

Que parece listar apenas as caixas de correio que têm um tempo de logon.

    
por 01.03.2011 / 13:13