10
votes

Comparaisons de dossiers via la ligne de commande

Je souhaite comparer deux dossiers sur Windows (Vista, XP) qui possèdent un grand nombre de fichiers énormes, que j'ai besoin de comparer. Si j'utilise au-delà de la comparaison ou de ce outil pour comparer les dossiers, il prend beaucoup de temps si je le fais manuellement. Je dois ajouter cette comparaison de dossiers au fichier batch.

SO SO WINDOWS (XP, Vista), existe-t-il une commande (intégrée) ou tout outil / utilitaire de 3ème partie (commercial ou gratuit - soit) pour comparer deux dossiers à l'aide de la ligne de commande.


0 commentaires

6 Réponses :


14
votes
>diff -r Folder_A Folder_BYou may find GNU diffutils compiled for windows at GnuWin32.

1 commentaires

Voir Stackoverflow.com/a/2019897/4304516 pour des options utiles que vous pouvez ajouter à cette commande.



3
votes

J'utilise Versions Cygwin de la ligne de commande UNIX:

diff -r dir1 dir2


0 commentaires

8
votes

Il y a la commande intégrée comp que vous pourriez utiliser. Cela dépend un peu de ce que vous voulez réellement comparer.

compare le contenu de deux fichiers ou ensembles de fichiers.

comp [DATA1] [DATA2] [/ D] [/ A] [/ L] [/ N = numéro] [/ c]

DATA1 Spécifie l'emplacement et Nom (s) de premier fichier (s) à comparer (s).

Data2 Spécifie l'emplacement et Nom (s) de second fichiers à comparer.

/ j affiche les différences de format décimal.

/ A Affichage Différences dans les caractères ASCII.

/ l Affiche les numéros de ligne pour les différences.

/ n = numéro compare uniquement le premier Nombre spécifié de lignes dans chaque Fichier.

/ c ne tient pas compte du cas de Lettres ASCII lors de la comparaison de fichiers.

Pour comparer des ensembles de fichiers, utilisez des paramètres Wildcards dans les paramètres Data1 et Data2.

Utilisez une syntaxe comme Comp c: \ folder1 c: \ folder2 Pour comparer tous les fichiers dans dossier1 avec le contenu du dossier . Si vous avez besoin de recueillir dans les sous-répertoires, vous devez utiliser un script de lot à l'aide d'un pour boucle et la commande et POPD POPD .

Il suffit de laisser un commentaire si vous avez besoin d'aide avec cela.


1 commentaires

Comment utiliser ce comp pour reconsivement avec deux dossiers. J'ai essayé comme ce comp c: \ folder1 \ * c: \ dossier2 \ * mais cela ne renvoie pas tout fichier.



1
votes
forfiles /P %folder1Path% /S /C "cmd /c comp /a @path %folder2Path%\@file"
Will work, but I can't remove the prompt question after the first comparison is made.

1 commentaires

WTON WOPK BC @file ne va pas aller au sous-divin du dossier1



-2
votes

Mes deux répertoires ont la même structure, mais quelques modifications de la version modifient les fichiers. De plus, mon répertoire n'était qu'un dossier de fichiers Python. Alors je me suis éloigné avec ... XXX


1 commentaires

1) Ceci est une question Windows, 2) Vous pouvez utiliser diff -r , pas besoin de chat .



0
votes

Basing sur la réponse de Martin Tournoij'v écrit Suivant (et ça marche bien): XXX

Il ressemble à des sous-répertoires et ne posez pas de quaiestes ...


0 commentaires