powershell exchange 脚本输出仅在手动输入时才有效

powershell exchange 脚本输出仅在手动输入时才有效

我在 Exchange 2010 EMS 中输入以下命令,以交互方式运行它时它可以起作用。

$a = Get-MailboxDatabaseCopyStatus -server theName | fl name,activedatabasecopy,status,contentindexstate
Write-Host $a

如果我从 EMS 窗口内调用具有相同命令的脚本,我会得到以下结果:

Microsoft.PowerShell.Commands.Internal.Format.FormatStartData Microsoft.PowerShell.Commands.Internal.Format.GroupStartData Microsoft.PowerShell.Commands.Internal.Format.FormatEntryData Microsoft.PowerShell.Commands.Internal.Format.FormatEntryData Microsoft.PowerShell.Commands.Internal.Format.FormatEntryData Microsoft.PowerShell.Commands.Internal.Format.FormatEntryData Microsoft.PowerShell.Commands.Internal.Format.FormatEntryData Microsoft.PowerShell.Commands.Internal.Format.FormatEntryData Microsoft.PowerShell.Commands.Internal.Format.GroupEndData Microsoft.PowerShell.Commands.Internal.Format.FormatEndData

不确定为什么相同的命令输出不同。有什么想法吗?谢谢。

答案1

看来,在脚本中修改管道输出的方式与手动输入命令的方式不同。我在下面的帖子中找到了答案,其中提到了“out-host”的使用。

https://stackoverflow.com/questions/35780815/exchange-get-mailbox-output-different-in-script-vs-command-line

相关内容