我有以下简单的PowerShell脚本:
get-process |
format-table name, @{name='VM(MB)';width=50000;expression={$_.VM};alignment='right'}
然而,当我尝试使用width参数时,我发现它对屏幕输出没有任何影响。无论我将它设置为什么值,5或50000或其间的任何值,结果都完全相同。
我在这里遗漏了什么吗?感谢。
答案 0 :(得分:3)
我正在尝试找到更具权威性的内容,但似乎问题是,如果未在输出集中的前导属性中指定宽度,则不会考虑宽度。如果您执行以下操作之一,则会获得所请求的调整。
删除(...)
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 1:02.946s
[INFO] Finished at: Fri Sep 08 13:59:42 UTC 2017
[INFO] Final Memory: 18M/288M
[INFO] ------------------------------------------------------------------------
Copying all target war artifacts from /home/jboss/source/target directory into /opt/webserver/webapps for later deployment...
'/home/jboss/source/target/ROOT.war' -> '/opt/webserver/webapps/ROOT.war'
(...)
name
设置get-process | format-table @{name='VM(MB)';width=50;expression={$_.VM};alignment='right'}
name
更改属性顺序
get-process | format-table @{name='Name (Yo)';width=40;expression={$_.Name};alignment='left'},@{name='VM(MB)';width=50;expression={$_.VM};alignment='right'}
当您的第一个属性没有设置宽度时,看起来不确定该怎么做,因此它会执行默认的格式化操作。
在PSv5上进行了测试。其他版本可能会有不同的