标题: PowerShell中Write-Host与Write-Output有哪些区别 创建: 2019-07-02 13:53 更新: 链接: https://scz.617.cn/windows/201907021353.txt Write-Host与Write-Output主要区别有两点: a) 如果想输出重定向,使用Write-Output b) 对于逗号分隔的待输出项,Write-Host输出到一行,Write-Output输出到多行 -------------------------------------------------------------------------- Function Test-Output-0 { Write-Host "Hello World" -ForegroundColor White -BackgroundColor Green } Function Test-Output-1 { Write-Output "Hello World" } Function Receive-Output { Process { Write-Host $_ -ForegroundColor Yellow -BackgroundColor Black } } Test-Output-0 | Receive-Output Test-Output-1 | Receive-Output Test-Output-1 -------------------------------------------------------------------------- 第一个输出绿底白字,输出转向没有生效 第二个输出黑底黄字,输出转向生效 第三个输出使用控制台缺省配色 -------------------------------------------------------------------------- Write-Host "One", "Two", "Three" Write-Output "One", "Two", "Three" -------------------------------------------------------------------------- 第一个在一行内输出"One Two Three" 第二个在三行依次输出"One"、"Two"、"Three" -------------------------------------------------------------------------- Write-Host "key=" + "value" Write-Output "key=" + "value" Write-Host( "key=" + "value" ) [Console]::WriteLine( "key=" + "value" ) -------------------------------------------------------------------------- 第一个在一行内输出"key= + value" 第二个在三行依次输出"key="、"+"、"value" 第三个在一行内输出"key=value"。圆括号使得先处理字符串的+操作,然后做为一个 参数传递给Write-Host。 第四个在一行内输出"key=value"。