转换为字符串后在 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()
将此 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()