如何在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]