写主机 - 丢失新行格式

时间:2013-08-26 03:55:51

标签: powershell powershell-v2.0

 $output=$(dir)
 Write-Host $output

我的输出是:

jboss-eap-5.1 jboss-eap-6.1 jboss-eap-6.1(2) Middleware Oracle TestSymlinksJboss TomcatA TomcatB Was7.0

有没有办法让这样的正常输出:echo $ output

Directory: C:\Servers


Mode                LastWriteTime     Length Name
----                -------------     ------ ----
d----         9/18/2012  10:33 AM            jboss-eap-5.1
d----          5/9/2013   1:10 PM            jboss-eap-6.1
d----         8/22/2013  11:33 AM            jboss-eap-6.1(2)
d----         1/22/2013   2:29 PM            Middleware
d----         1/22/2013   2:25 PM            Oracle
d----          8/1/2013   2:43 PM            TestSymlinksJboss
d----          4/4/2013   4:25 PM            TomcatA
d----         7/22/2013   4:49 PM            TomcatB
d----        10/18/2012   3:00 PM            Was7.0

我在函数内使用Write-Host(所以我不想使用echo) 感谢您的回复

1 个答案:

答案 0 :(得分:5)

Write-Host主机不进行格式化。它只显示您提供的字符串(或通过强制转换为字符串的对象)。试试这个让PowerShell为你做一些格式化:

Write-Host ($output | Out-String)