左对齐powershell命令的输出

时间:2013-12-16 21:18:26

标签: powershell powershell-v2.0

我正在运行以下命令,我想将输出对齐到左边......只是无法弄明白:

基本上,这为我提供了特定目录的大小,并且它是右对齐的。

Get-ChildItem c:\users\xxx\desktop -recurse | Measure-Object -property length -sum|Select-object @{Name="Total size GB "; Expression={$_.Sum / 1GB}} >> c:\users\xxx\desktop\pwr\bkp.txt

4 个答案:

答案 0 :(得分:5)

将Select-Object替换为Format-Table,如下所示:

Format-Table -Property @{ Name="Size in GB"; Expression={$_.Sum / 1GB }; Alignment="left"; }

答案 1 :(得分:4)

快速&脏 - 将其格式化为表格,自动调整大小:

Get-ChildItem c:\users\xxx\desktop -recurse |
    Measure-Object -property length -sum|
    format-table -autosize @{Name="Total size GB "; Expression={$_.Sum / 1GB}} >> c:\users\xxx\desktop\pwr\bkp.txt

但我更喜欢使用out-file而不是重定向:

Get-ChildItem c:\users\xxx\desktop -recurse |
    Measure-Object -property length -sum|
    format-table @{Name="Total size GB "; Expression={$_.Sum / 1GB}} -autosize |
    | out-file -append -path c:\users\xxx\desktop\pwr\bkp.txt

答案 2 :(得分:0)

今天花了我一些时间...在发布问题之后,找到了一个能为我完成工作的答案。 我用ft替换了select-object,并将其与左对齐,如预期的那样。

之前:

Get-ChildItem c:\ users \ xxx \ desktop -recurse | Measure-Object -property length -sum | Select-object @ {Name =“Total size GB”;表达式= {$ _。总和/ 1GB}}>> C:\用户\ XXX \桌面\ PWR \ bkp.txt

后: Get-ChildItem c:\ users \ xxx \ desktop -recurse | Measure-Object -property length -sum | ft @ {Name =“Total size GB”;表达式= {$ _。总和/ 1GB};对齐=左}>> C:\用户\ XXX \桌面\ PWR \ bkp.txt

答案 3 :(得分:0)

format-table是一个非常特殊的命令。一旦使用format-table命令,就不应该使用任何其他命令。如果select的任何输出对象为空,那么输出文件将不会显示。格式表是您在脚本中执行的最后一项操作。你会得到,,,,,,

将get-member放在最后,看看你要去做什么 - 是属性还是对象。它将是关于格式数据,而不是实际数据。

而是使用带格式表的out-file或out-host