我使用 Powershell 读取各种 XML 配置文件,然后使用 format-table -autosize 命令以漂亮的表格格式显示输出,并将输出作为文本文件。
由于配置文件时不时地发生变化,如果有任何变化,我每天都会更新 SVN 存储库中的这些文本文件。真正好的一点是,我可以返回并查看特定配置更改发生时间的历史记录。
但是,我遇到的问题之一是有时配置条目比前几天“更宽”,因此导致从一天到下一天的列比以前变宽。
我的问题是...是否有办法让我在 format-table 命令中指定每列的默认宽度,而不是依靠 Powershell 自动调整。
我意识到我可以使用 format-table 或 format-table -autosize ....并且我发现使用 -autosize 似乎更好,因为否则每行和列之间的间距都非常浪费。
任何解决这个问题的想法或方法将不胜感激。大多数配置至少有 10 列或更多......通常包含 URL、端口号等。
最佳答案
您可以使用哈希表来指定宽度,例如:
Get-Process -id $pid |
ft -prop @{n='Name';e={$_.Name};width=20},@{n='Id';e={$_.Id};w=8},@{n='PM';e={$_.PM};w=18}
请注意,n
是 Name
的缩写,e
是 Expression
的缩写,w
是 Width
的缩写。您可以使用这些名称的短形式或长形式。为了完整起见,有一个对齐字段(简称 a
),可以是 Left
、Center
或 Right
。这些设置记录在 Format-Table
帮助中的 Property
参数信息下。
关于svn - Powershell 和格式表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21714325/