-2

我一直在尝试分配比较对象结果的值,但我得到了关于输出的附加信息。

这是代码:

$a = (dir C:\_pc\*).BaseName
$b = (dir C:\Users\username\Documents\folder\Jezyki\*).BaseName
$c = (Compare-Object -IncludeEqual -ExcludeDifferent $a $b)
foreach ($element in $c) {
"$element"
}
Write-Output ($c)

运行此脚本的示例输出:

@{InputObject=FolderName; SideIndicator===}
4

1 回答 1

0

尝试-PassThru开关Compare-Object。它将输出字符串。如果该对象是一个对象,它将附加 sideindicator 作为一个额外的属性。

前任。

$c = Compare-Object -IncludeEqual -ExcludeDifferent $a $b -PassThru

此外,如果您想保留原始FileInfo-object,您可以指定-Property Basename仅比较该值而不丢弃该对象的其余部分。前任。

$c = Compare-Object (dir C:\_pc\*) (dir C:\Users\username\Documents\folder\Jezyki\*) -IncludeEqual -ExcludeDifferent -Property Basename -PassThru
于 2017-01-25T14:27:42.370 回答