比较PowerShell中的对象不能仅显示差异



在以下命令下尝试了,但在两个变量中获取了类似的行条目

,但我的要求仅显示两个变量的行差异

值1的内容为:

2273.32689.312
123.33.2312.1
5693.2.3.2.1

value2的内容为:

67556327.2.211.33
123.33.2312.1
55673.222.33.4

输出应为:

2273.32689.312
5693.2.3.2.1
67556327.2.211.33
55673.222.33.4

这些是我尝试的命令:

Compare-Object $value1 $value2 | select -ExpandProperty inputobject
Compare-Object $value1 $value2 -Property "$property" | Format-Table -AutoSize
Compare-Object -ReferenceObject $value2 -DifferenceObject $value1 | select -expandproperty InputObject​

以下对我有用 -

$value1 = @('2273.32689.312', '123.33.2312.1', '5693.2.3.2.1')
$value2 = @('67556327.2.211.33', '123.33.2312.1', '55673.222.33.4')
Compare-Object -ReferenceObject $value2 -DifferenceObject $value1 | select -expandproperty InputObject

我得到所需的输出如下 -

2273.32689.312
5693.2.3.2.1
67556327.2.211.33
55673.222.33.4

您粘贴的代码在InputObject之后具有额外的字符。您可能需要检查一次 -

Compare-Object -ReferenceObject $value2 -DifferenceObject $value1 | select -expandproperty InputObject​

如果您的输入对象包含带有多行的单个字符串,则应通过新行分开它们来创建字符串的数组:(如果它们被空间隔开,请改用-split ' '(

$value1 = $value1 -split 'rn'
$value2 = $value2 -split 'rn'
Compare-Object $value1 $value2

相关内容

  • 没有找到相关文章

最新更新