Tro*_*yen 3 powershell windows-10
我使用许多 cmdlet,默认在 4-5 列的表格中显示数据。其中一些数据经常大于默认列宽并被截断,但这没关系,因为每个值的开头是最有用的部分(例如,当尝试区分来自同一域的所有电子邮件地址时)。
随着升级到Windows 10,默认的列宽似乎有所增加。这给我留下了超宽的列,显示的字符比我严格需要的要多,但也有一个不幸的副作用,即最右边的列不会输出,因为它们被“推”出屏幕。
作为一个直观的例子,在 Windows 8 中我有这样的东西:
Column 1 Column 2 Column 3 Column 4
-------- -------- -------- --------
Data Lorem ip... Lorem ip... Important data
Run Code Online (Sandbox Code Playgroud)
现在在 Windows 10 中我得到了这个:
Column 1 Column 2 Column 3
-------- -------- --------
Data Lorem ipsum dolor sit amet consectetur ad... Lorem ipsum dolor sit amet...
Run Code Online (Sandbox Code Playgroud)
其中中间列的宽度可以为 64 个字符,从而防止显示后面的列。简单地对列进行重新排序并没有帮助,因为我仍然需要至少所有列中的前几个字符。
有没有办法可以强制 format-table 或其他一些显示 cmdlet 在设定值(例如 20 个字符)后截断列?最好是我缺少某种控制数据显示方式的参数。
因为Format-Table你只有几个选择。-AutoSize会让它看起来更好,而不是分散,如果你-Wrap也把它扔在那里,它会有很大的帮助。
您的另一个选择是制作自定义表格。一个例子如下所示
$a = @{Expression={$_.Name};Label="Process Name";width=25}, `
@{Expression={$_.ID};Label="Process ID";width=15}, `
@{Expression={$_.MainWindowTitle};Label="Window Title";width=40}
Get-Process | Format-Table $a
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4891 次 |
| 最近记录: |