![powershell exchange 脚本输出仅在手动输入时才有效](https://linux22.com/image/696905/powershell%20exchange%20%E8%84%9A%E6%9C%AC%E8%BE%93%E5%87%BA%E4%BB%85%E5%9C%A8%E6%89%8B%E5%8A%A8%E8%BE%93%E5%85%A5%E6%97%B6%E6%89%8D%E6%9C%89%E6%95%88.png)
我在 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”的使用。