gpt4 book ai didi

powershell - PowerShell-如何判断两个对象是否相同

转载 作者:行者123 更新时间:2023-12-03 00:28:05 25 4
gpt4 key购买 nike

假设您有两个相同的对象(意味着它们分别具有相同的属性和相同的值)。

您如何测试平等性?

示例
$obj1$obj2相同

enter image description here

这是我尝试过的:

if($obj1 -eq $obj2)
{
echo 'true'
} else {
echo 'false'
}
# RETURNS "false"

if(Compare-Object -ReferenceObject $obj1 -DifferenceObject $obj2)
{
echo 'true'
} else {
echo 'false'
}
# RETURNS "false"

编辑

这是 ,不是相同

enter image description here

最佳答案

您可以使用PSObject比较两个Compare-Object对象的Properties属性,从而比较两个PSObject对象的属性和值是否相等。例:

if ( -not (Compare-Object $obj1.PSObject.Properties $obj2.PSObject.Properties) ) {
"object properties and values match"
}
else {
"object properties and values do not match"
}

如果要在函数中使用它:
function Test-PSCustomObjectEquality {
param(
[Parameter(Mandatory = $true)]
[PSCustomObject] $firstObject,

[Parameter(Mandatory = $true)]
[PSCustomObject] $secondObject
)
-not (Compare-Object $firstObject.PSObject.Properties $secondObject.PSObject.Properties)
}

关于powershell - PowerShell-如何判断两个对象是否相同,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47576496/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com