Comment puis-je comparer les deux fichiers dans un fichier batch?
Comment puis-je comparer les deux fichiers dans un fichier de commandes, et effectuer une action basée sur si oui ou non ils correspondent? J'ai essayé quelque chose comme:
if file1.txt NEQ file2.txt goto label
mais il permet de comparer la chaîne "file1.txt" plutôt que le fichier. J'ai lu sur la commande COMP, mais il ne semble pas fonctionner si je l'ai mis dans une instruction if. Quelqu'un sait comment faire cela? Désolé, mais j'ai rarement l'utilisation de fichiers de commandes et ont peu d'expérience.
Merci d'avance.
OriginalL'auteur Cory Walker | 2009-03-22
Vous devez vous connecter pour publier un commentaire.
Je crois que vous pouvez utiliser le "FC" commande et de vérifier ensuite la variable errorlevel. Voici un code:
(Tiré de http://www.computing.net/answers/dos/batch-file-command/15753.html)
Pourriez-vous clarifier -- ne errorlevel 0 signifient la même chose, errorlevel 1 signifier différentes? Ou vice-versa?
Prises à partir de la référence en ligne de Commande: "-1: syntaxe non Valide (par exemple, un seul fichier est passé); 0: Les fichiers sont identiques.; 1: Les fichiers sont différents.; 2: Ne peut pas trouver au moins un des fichiers."
OriginalL'auteur matt_h
Il semble que le programme d'accompagnement est en fait assez facile à utiliser. Voir cette question sur les réponses de Yahoo.
Notez que l'exécution de
comp /?
va imprimer le texte d'aide pour le programme (comme le fait en précisant le/?
argument avec n'importe quel Windows natif programme en ligne de commande). Cette fonction génère le même texte que vous voyez dans la réponse à la question ci-dessus.Le contenu de la Réponse Yahoo:
comp
a un problème: après chaque comparaison, de manière interactive demande à l'utilisateur s'il veut comparer plusieurs fichiers. Et il n'y a pas d'interrupteur pour désactiver cette requête, alors la meilleure option est deecho N|comp file1 file2
. Sinon, comp est plus rapide car il compare les tailles de première, et la comparaison s'arrête après l'affichage des 10 différences, et permet de comparer des groupes de fichiers à l'aide de masques. Sur l'autre main,FC
compare les fichiers complets en dépit de la taille, affiche toutes les différences, et tente de se resynchroniser les similitudes sur des positions différentes (comme unix diff).OriginalL'auteur Noldorin
- Je utiliser l'exemple ci-dessous afin de construire des rapports basés sur les différences de fichier:
OriginalL'auteur David