【问题标题】:Comparing files in two directories比较两个目录中的文件
【发布时间】:2017-11-17 00:22:14
【问题描述】:

这是我迄今为止尝试做的:

$fse = Get-ChildItem -Recurse -Path C:\new1 -Filter *.txt

$fso = Get-ChildItem -Path C:\new2 -Filter *.txt | where {$fse.name -eq $_.name}

echo "output : $fso" 

new1 目录有文件:- hi.txt、hiCopy.txt、hiCopy2.txt
new2 目录有文件:- hi.txt, hiCopy.txt

这就是我得到的:

PS C:\Users\prshrivastava> $fse = Get-ChildItem -Recurse -Path C:\new1 -Filter *.txt

PS C:\Users\prshrivastava> $fso = Get-ChildItem -Path C:\new2 -Filter *.txt | where {$fse.name -eq $_.name}

PS C:\Users\prshrivastava> echo "output : $fso"
output :

我正在尝试列出不同目录中的相同文件,然后如果找到具有相同匹配项的相同文件,则删除比较目录

【问题讨论】:

标签: powershell


【解决方案1】:

您的问题是您试图将集合与单个项目 (-eq) 进行比较。

PS C:\> $Fse = Get-ChildItem -Path 'C:\new1' -Filter '*.txt' -Recurse
PS C:\> $Fse.Name

hi.txt
hiCopy.txt
hiCopy2.txt

PS C:\> $Fso = Get-ChildItem -Path 'C:\new2' -Filter '*.txt' -Recurse |
>> Where-Object { $Fse.Name -contains $_.Name }
PS C:\> $Fso

hi.txt
hiCopy.txt

RESOURCES

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-03-18
    • 2020-01-18
    • 1970-01-01
    • 2012-12-31
    • 2012-10-12
    • 2017-03-28
    • 2023-04-05
    • 1970-01-01
    相关资源
    最近更新 更多