PowerShell:System.Object还是PSObject?

时间:2017-07-28 14:44:26

标签: powershell

我最近开始在一些PowerShell脚本中使用自定义对象。在线查看时,我注意到有两种方法可以创建这些对象

$Obj1 = New-Object System.Object
$Obj2 = New-Object PSObject

它们都具有我需要的功能,例如为要保留的必要信息设置自定义属性。

我的问题是,是否有必要时间使用其中一个而不是另一个?我发现一篇关于Technet的文章似乎朝着正确的方向前进,给出了这个问题的答案,但我无法围绕它思考。链接在下面。

https://social.technet.microsoft.com/Forums/scriptcenter/en-US/dcfa43ba-812f-4274-b5b2-caa0e2d56988/psobject-vs-systemobject?forum=ITCG

谢谢!

1 个答案:

答案 0 :(得分:2)

我能够在下面链接的文章中找到我的答案。

Custom-Object-Gotchas

作为旁注,我正在寻找的答案是,似乎PSObject不受限制,因为System.Object就是将它们与.NET函数一起使用。 System.Object不会将自定义属性传递给.NET函数,而PSObject将传递