如何使用Write-Host显示格式化输出

时间:2016-04-12 22:51:27

标签: powershell

我很困惑PS在使用Write-Host vs Write-Output与直接调用对象进行显示时如何处理对象的格式。

我需要使用Write-Host,因为当我在函数中调用它时,Write-Output会破坏我的代码。

但是当我使用Write-Host时,显示的数据并不是我所期望的,我想在我直接调用它时看到我的对象(Write-Host也是一样)。

PS>$files = GetChildItem C:\
PS>$files #or Write-Output $files
PS>Write-Host $files
PS>Write-Host $files |Format-Table
PS>$files | Format-Table | Write-Host

enter image description here

1 个答案:

答案 0 :(得分:10)

Out-String会将表格格式转换为字符串。正如Nick Daniels

所指出的那样
 $files | Format-Table | Out-String|% {Write-Host $_}