【问题标题】:Align Format-Table output in powershell after converting to string转换为字符串后在powershell中对齐格式表输出
【发布时间】:2015-08-28 13:43:42
【问题描述】:

将此表转换为字符串后,列不再正确对齐。列中的数据是,但 3 列本身不是。理想情况下,我希望它们与左侧对齐。有没有什么办法解决这一问题?我转换为字符串的原因是为了消除不需要的空间。

  (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()

【问题讨论】:

  • 为什么需要消除不需要的空格?您的最终目标是将输出保存在文件中吗?
  • 我将屏幕上的数据与其他数据一起输出,所有内容相隔1行。这会在上面和下面输出额外的行,所以我必须通过转换为字符串来删除它们。

标签: powershell alignment output


【解决方案1】:

我自己找到了答案。只需要-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()

【讨论】:

    猜你喜欢
    • 2012-01-04
    • 2016-10-28
    • 1970-01-01
    • 2023-03-14
    • 1970-01-01
    • 2011-09-06
    • 1970-01-01
    相关资源
    最近更新 更多