Fichier de commandes Windows pour trouver les doublons dans un arbre

J'ai besoin d'un fichier de commandes ( Windows CMD est l'interprète, une .chauve-souris ) pour faire ce type de tâche:

1) Recherche par le biais d'un dossier et ses sous-dossiers

2) de Trouver des fichiers avec le même nom de fichier et l'extension ( aka les doublons )

3) Vérifier si ils ont la même taille

4) Si le même nom de même taille, l'écho de tous les fichiers sauf le premier ( ou presque j'ai besoin de supprimer toutes, sauf une copie )

Merci pour tout type d'aide

Ce n'est qu'un script initial, juste pour vérifier les fichiers dans un dossier et ses sous-dossiers, et leur taille:

@Echo off
Setlocal EnableDelayedExpansion

Set Dir=C:\NewFolder

For /r "%Dir%" %%i in (*) do (
Set FileName=%%~nxi
Set FullPath=%%i
Set Size=%%~zi
Echo "!FullPath!" - SIZE: !Size!
)
Echo.
Pause
Pouvez-vous ajouter un peu de code que vous avez essayé? En outre, certaines informations (par exemple) de votre système d'exploitation ou l'interpréteur de commandes qui serait utile pour le potentiel answerers
Bien le code que j'ai écris a un problème après la boucle, je ne pense pas que le système opératif faire une différence pour une .bat / CMD mais est Windows XP
Essayez de regarder ceci: superuser.com/questions/366487/... je n'ai pas essayé d'écrire le script/fichiers par lots pour Windows, mais il semble qu'au moins un certain succès a été eu par la question asker dans ce cas. En particulier, jetez un oeil à forfiles, qui est (selon Wikipedia) disponible à partir de windows Vista à partir de: en.wikipedia.org/wiki/Forfiles
forfiles /s /p <myPathWithoutBracketsHere> /c "echo @relpath" donnera une liste de tous les fichiers en chemin relatif, par exemple
J'ai Xp et je n'ai pas forfiles, ce n'est pas un problème pour obtenir le chemin d'accès du fichier ( comme FOR /R "MYDIR" %%i IN (*) DO ECHO %%i ) mais c'est pour vérifier le double, la taille du fichier et la comparaison de toutes les informations

OriginalL'auteur Thummer | 2014-09-27