如何在Powershell中比较两个对象引用是否相同(即Identity / Same运算符)?

时间:2018-06-13 19:01:08

标签: powershell

如何在Powershell中比较两个对象引用是否相同?

我正在寻找一个运营商

$true <op> $true # is true
$true <op> "true" # is false
"true" <op> $true # is false

我已经删除了所有powershell comparison operators,但它不是=而不是==。

由于上面链接的powershell文档中的错误描述,我认为-is会是答案:

  

Type -is如果两个对象都相同,则返回true

但是,它在文档中进一步准确描述:

  

类型比较运算符(-is和-isnot)用于确定   如果对象是特定类型。

因此,以下内容会导致错误:

$true -is $true

错误:

[ERROR] Cannot convert value "True" to type "System.Type". Error: "Invalid cast from 'System.Boolean' to 'System.Type'."
[ERROR] At line:1 char:1
[ERROR] + $true -is $true
[ERROR] + ~~~~~~~~~~~~~~~
[ERROR]     + CategoryInfo          : NotSpecified: (:) [], RuntimeException
[ERROR]     + FullyQualifiedErrorId : RuntimeException
[ERROR]  

0 个答案:

没有答案