在尝试学习Powershell时,我正在研究一个简单的脚本。我基本上只是获取有关机器的信息,并以某种格式将其显示回来。当我使用Get-Service仅显示有关已停止服务的信息时,它可以正常工作,但是随后我尝试显示有关网络适配器的信息,这就是我的问题所在。
当网络适配器的信息应显示Windows服务时,输出先显示Windows服务,然后显示可用接口,然后显示有关已停止服务的信息,然后说“可用接口”,然后显示网络信息。当输出在上一行时,为什么在显示输出之前执行写主机“可用接口”?感谢您的帮助!
Write-Host "Windows Services"
Write-Host "*********"
Get-Service | Select-Object -Property Status,Name,DisplayName | Where-Object {$_.Status -eq "Stopped"}
Write-Host "Available Interfaces"
Write-Host "*******************"
Get-NetAdapter -Name "*" | Format-List -Property "*"
答案 0 :(得分:2)
Write-Host
将输出直接写到控制台,而Get-Service
和Get-NetAdapter
被发送到管道,在管道中它们可能需要一些时间来执行并将输出返回到控制台。如果要同步输出,可以改用Write-Output
。