如何使用 Format-Table 命令解析表格格式的 Collection<PSObject>

How to parse Collection<PSObject> when it is in tabular format by using Format-Table command

我正在使用 PowerShell cmdlet 即。通过C#程序获取-SPUser如下

**Get-SPUSer** -web <siteCollection> | **format-table** Name,LoginName....

在我调用此命令后,它以 Collection< PSObject >

的形式给出输出

现在我想遍历这个 PSObject 集合以获取实际记录,即具有命令中提到的属性值的用户。

我想使用格式-table 而不是select-对象。 如何使用 C# 解析 PSObject 集合以获取 属性=用户的值?

不是您问题的真正答案,但我个人并不喜欢尝试让 Powershell 与其他人一起玩。如果我处在你的位置,我会从这个开始:https://social.msdn.microsoft.com/Forums/sharepoint/en-US/6e9b3606-4ee7-4253-bafc-0058d9fe2a71/how-to-get-spuser-from-display-name-with-c-code 并完全使用 C# 或完全使用 Powershell,看看我能在那里完成什么。

没有其他方法,只能使用Out-String cmdlet,使用管道提供平面字符串格式的输出。命令如下

Get-SPUSer -web SiteCollection |格式列表-属性 prop1, prop2 .. |外弦

删除 newline/carriage returns 并使用字符串拆分技术后,我能够获得预期的输出。 这是实现它的非常粗鲁的方式,但我别无选择。 如果 select-object 命令提供了良好的性能,那么我肯定会选择它。