Powershell Compare对象返回错误的结果

Powershell Compare对象返回错误的结果,powershell,Powershell,我试图使用以下命令比较两个文件夹的内容: Compare对象(Get ChildItem C:\Compare-recurse)(Get ChildItem J:\Compare-recurse)-属性全名 这是我应该得到的结果: FullName SideIndicator -------- ------------- J:\compare\test1.txt =>

我试图使用以下命令比较两个文件夹的内容:

Compare对象(Get ChildItem C:\Compare-recurse)(Get ChildItem J:\Compare-recurse)-属性全名

这是我应该得到的结果:

FullName                       SideIndicator
--------                       -------------         
J:\compare\test1.txt           =>                     
C:\compare\install.msi         <=           
C:\compare\setup.exe           <=                    
C:\compare\subfolder\test3.txt <=     
FullName侧指示器
--------                       -------------         
J:\compare\test1.txt=>

C:\compare\install.msi您的比较应该是

Compare-Object `
  (Get-ChildItem C:\Compare -Recurse | Select-Object -ExpandProperty FullName | Split-Path -NoQualifier) `
  (Get-ChildItem J:\Compare -Recurse | Select-Object -ExpandProperty FullName | Split-Path -NoQualifier)

这是因为,正如@TessellatingHeckler所指出的,两条路径之间的驱动器号(限定符)总是不同的,您希望忽略这一部分。

这是我应该得到的结果-我不这么认为;它将如何在一个集合中找到
J:\anything
,在这个集合中,所有东西都从
C:\…
开始,反之亦然。是的,你是对的。看不见森林的树木。谢谢你指出这一点。谢谢,现在我只需要弄清楚如何为两个不同驱动器上的不同对象获取完整路径。这正是我发布的命令所做的-它从每个路径中删除驱动器号(限定符)以进行比较。
Compare-Object `
  (Get-ChildItem C:\Compare -Recurse | Select-Object -ExpandProperty FullName | Split-Path -NoQualifier) `
  (Get-ChildItem J:\Compare -Recurse | Select-Object -ExpandProperty FullName | Split-Path -NoQualifier)