我有一个打印Exchange cmdlet结果的函数。但输出不会立即打印。它几乎就像是异步运行。
在以下示例中,输出在第一个Read-Host
中断后打印。我预计会立即打印,即在第一次Read-Host
休息之前。
我也曾尝试使用Start-Sleep -S 1
,但它没有改变任何内容。
显然,我没有基本的理解。有人能指出我正确的方向吗?
Function GetMailboxFolders {
$MBID = 15
Get-MailboxFolderStatistics -Identity ((Get-Mailbox)[$MBID].alias) |
Select-Object Identity, ItemsInFolder, FolderSize
Read-Host -Prompt 'Push key to continue(1)'
# The result of the cmdlet is printed here!?
Read-Host -Prompt 'Push key to continue(2)'
}
如果我不添加| Select-Object ...
,它会立即打印/同步运行......为什么?