הסקריפט של @yzahn נראה פשוט ואיכותי כתמיד.
אם אפשר להוסיף משהו הסקריפט הבא:
$Dir1 = Get-ChildItem -Path "נתיב התיקייה הראשונה"
$Dir2 = Get-ChildItem -Path "נתיב התיקייה השנייה"
$dup = "יעד להעתקת הקבצים הכפולים"
ForEach ($File in $Dir1) {
$dir2 | where {$_.baseName -eq $File.BaseName} | copy-Item -Destination $dup
}
אתה יכול להגדיר מקום בו יועתקו הקבצים שמזוהים ככפולים. אתה יכול גם למחוק אותם בצורה אוטומטית - פשוט במקום copy-item תשים remove-item -force.
אם אתה רוצה שיזהה רק קבצים כפולים עם אותה סיומת בדיוק - (כלומר רק שני קבצים mp3 לדוגמא ולא שני קבצים משתי סיומות אך עם אותו שם) - תוסיף את התנאי הזה and $_.Extension- לתנאי הכפילות (כלומר שיהיה ככה הקטע עם הסוגריים מסולסלים: {baseName -eq $File.BaseName -and $_.Extension._$})
לערוך את כל הנ"ל ולהריץ בפווארשל.
שים לב שאתה יכול כל פעם להפוך את היחס של החיפוש (כלומר במקום שיחפש את dir1 על dir2, הוא יחפש את dir2 על dir1).
בהצלחה!!