我希望能够在没有任何列标题的情况下从PowerShell输出数据。我知道我可以使用Format-Table -HideTableHeaders隐藏列标题,但顶部会留空行。

这是我的示例:

get-qadgroupmember 'Domain Admins' | Select Name | ft -hide | out-file Admins.txt

如何消除列标题和空白行?

我可以添加另一行,并执行以下操作:
Get-Content Admins.txt | Where {$_ -ne ""} | out-file Admins1.txt

但是我可以一行吗?

最佳答案

在您的情况下,当您仅选择一个属性时,最简单的方法可能是完全绕开所有格式:

get-qadgroupmember 'Domain Admins' | foreach { $_.Name }

这将为您提供一个没有列标题或空行的简单string[]Format-* cmdlet主要供人类使用,因此其输出并未设计为易于机读或可解析的。

对于多个属性,我可能会使用-f格式运算符。遵循以下原则
alias | %{ "{0,-10}{1,-10}{2,-60}" -f $_.COmmandType,$_.Name,$_.Definition }

这不是很漂亮,但是可以让您轻松,完全地控制输出格式。而且没有空行:-)

10-07 21:36