转换为字符串后在 powershell 中对齐格式-Table 输出

Align Format-Table output in powershell after converting to string

将此 table 转换为字符串后,列不再正确对齐。列中的数据是,但 3 列本身不是。理想情况下,我希望它们向左对齐。有没有什么办法解决这一问题?我转成字符串的原因是去掉不需要的space.

  (Get-EventLog system -computername $computernamehere -InstanceId 2147489657 -Newest 10 `
        | Format-Table `
            @{Name="Event ID";Expression = { $_.EventID }; Alignment="left" },
            @{Name="TimeWritten";Expression = { $_.TimeWritten }; Alignment="left" },
            @{Name="Machine Name";Expression = { $_.MachineName }; Alignment="left" } `
        | Out-String).Trim()

我自己找到了答案。刚需-Autosize。如果大家有更好的方法,请告诉我。

(Get-EventLog system -computername $computernamehere -InstanceId 2147489657 -Newest 10 `
    | Format-Table -Autosize `
        @{Name="Event ID";Expression = { $_.EventID }; Alignment="left" },
        @{Name="TimeWritten";Expression = { $_.TimeWritten }; Alignment="left" },
        @{Name="Machine Name";Expression = { $_.MachineName }; Alignment="left" } `
    | Out-String).Trim()