Powershell脚本格式问题

时间:2013-10-09 18:44:32

标签: powershell formatting

当我在控制台中运行Get-Recipient | ft Name时,一切看起来都不错, 但是当我在脚本中尝试它时,输出只是一个类名列表; Microsoft.PowerShell.Commands.Internal.Format.FormatEntryData
我该如何解决?感谢任何和所有的帮助!

//大卫

1 个答案:

答案 0 :(得分:5)

Format-* cmdlet应仅用于控制显示数据。它们应该很少在“库”类型的脚本或函数中使用,期望可能在显示状态消息或其他东西时。 Format-* cmdlet的实际输出是一组魔术对象(FormatEntryData人),它们指示Powershell引擎如何进行显示格式化。

它可以在控制台中运行,因为您没有捕获数据,只是让它显示在屏幕上。

在您的脚本中,您应该按原样返回数据,并让调用者决定如何格式化它,如果他想要的话。如果您想返回 Name字段,请使用Select-Object Name去除其他字段。