COMP |
Compare |
---|---|
Zenith Data Systems Microsoft MS-DOS 2 | Externe |
Syntaxe
COMP ? |
COMP [filespc1] [filespc2]] |
Paramètres
Nom | Description |
---|---|
? | Ce paramètre permet d'afficher l'écran d'aide de la commande COMP. |
filespc1 | Ce paramètre permet d'indiquer la spécification de fichier identifiant le premier des deux fichiers (ou groupes de fichiers) que vous souhaitez comparer. |
filespc2 | Ce paramètre permet d'indiquer la spécification de fichier identifiant le deuxième des deux fichiers (ou groupes de fichiers) que vous souhaitez comparer. |
Description
Cette commande permet d'effectuer la comparaison de deux fichiers.
Remarques
- La commande COMP compare le contenu de deux fichiers ou de deux groupes de fichiers. Elle peut être exécuté après une opération COPY pour s'assurer que les deux copies du ou des fichiers sont identiques.
- Utilisez COMP pour comparer les fichiers sélectionnés ; utilisez DISKCOMP pour comparer le contenu de deux disques.
Concepts préliminaires
La commande COMP permet de comparer deux fichiers pour savoir si leur contenu est identique ou différent. En utilisant des caractères génériques, vous pouvez également utiliser COMP pour comparer deux groupes de fichiers sélectionnés. Les fichiers comparés peuvent se trouver dans le même répertoire ou dans des répertoires différents, et/ou sur le même disque ou sur des disques différents. Dans tous les cas, les deux fichiers que vous spécifiez pour la comparaison doivent avoir la même taille.
La commande COMP peut être appelé de deux manières : entrée interactive, dans laquelle COMP vous invite à entrer les paramètres requis ; ou une entrée de ligne de commande, dans laquelle vous entrez les paramètres requis lorsque vous appelez la commande. Lorsque vous appelez COMP, un message d'erreur s'affiche si les fichiers que vous avez spécifiés pour la comparaison ne sont pas de la même taille, ou si un répertoire ou un fichier que vous avez spécifié n'est pas trouvé.
Pendant la comparaison de fichiers, COMP affiche un message pour n'importe quel emplacement dans les deux fichiers contenant des informations ne correspondant pas. Le message indique le déplacement dans les fichiers des octets incompatibles et le contenu des octets eux-mêmes. Le déplacement et le contenu des octets sont affichés en hexadécimal. Le message d'erreur de non-concordance s'affiche sous la forme :
Compare error at offset xxxxxxxx File 1 = yy File 2 = zz |
où
Nom | Description |
---|---|
xxxxxxxx | Ce paramètre permet d'indiquer l'emplacement (le déplacement) des informations non concordantes. |
yy | Ce paramètre permet d'indiquer le contenu du fichier 1 (filespc1) au déplacement xxxxxxxx. |
zz | Ce paramètre permet d'indiquer le contenu du fichier 1 (filespc2) au déplacement xxxxxxxx. |
Ce message s'affiche pour chaque discordance trouvée, jusqu'à un maximum de dix discordances. Si dix discordances sont trouvées, COMP conclut qu'une comparaison supplémentaire serait inutile, arrête l'opération de comparaison et affiche :
10 Mismatches - ending compare |
La commande COMP vérifie ensuite s'il existe d'autres fichiers à comparer. Si des fichiers supplémentaires ont été spécifiés (si des caractères génériques ont été utilisés dans filespc1 et/ou filespc2), COMP commence l'opération de comparaison suivante. Si aucun fichier supplémentaire n'a été spécifié, COMP vous invite à indiquer si vous souhaitez ou non comparer davantage de fichiers.
Après la réussite d'une opération de comparaison de fichiers (après avoir comparé deux fichiers et trouvé aucune discordance), COMP affiche :
Files compare OK |
La commande COMP commence alors la prochaine opération de comparaison de fichiers (si des caractères génériques ont été utilisés) ou vous invite à indiquer si vous souhaitez ou non comparer davantage de fichiers.
Dans toutes les opérations de comparaison, COMP vérifie le dernier octet des fichiers comparés pour s'assurer que chacun contient une marque de fin de fichier valide (CTRL+Z, étant hexadécimal 1A). Si les marques de fin de fichier sont trouvées, la commande COMP continue l'exécution. Si les marques de fin de fichier ne sont pas trouvées, la commande COMP affiche :
Eof mark not found |
puis continue l'exécution.
Cette vérification est effectuée car certains programmes produisent des fichiers dont la taille est toujours enregistrée dans le répertoire sous la forme d'un multiple de 128 octets, même si les données réellement utilisables dans un fichier sont susceptibles d'être inférieures de quelques octets à la taille du fichier enregistrée dans le répertoire. Pour les fichiers tels que ceux-ci, la commande COMP peut produire des messages d'erreur de non-concordance pour les derniers octets du dernier bloc de 128 octets d'un fichier. (COMP compare toujours le nombre d'octets reflétés dans les entrées de répertoire des fichiers.) Ainsi, les messages Eof mark not found indiquent à l'utilisateur que les erreurs de non-concordance affichées (le cas échéant) ne se sont peut-être pas produites dans la partie des données utilisables du fichier(s) mais dans les derniers octets (vides) du ou des fichiers.
La commande COMP n'attend pas que vous insériez une disquette contenant le(s) fichier(s) à comparer. Par conséquent, si un fichier à comparer ne se trouve pas sur le même disque que la commande COMP elle-même et si vous n'avez qu'un seul unité de disquette dans votre système, vous pouvez utiliser la méthode de saisie interactive pour appeler COMP. Ensuite, lorsque COMP vous demande les paramètres requis, vous pouvez insérer le disque correct avant de répondre aux prompts.
Écran d'aide COMP
Pour afficher l'écran d'aide COMP, saisissez :
COMP ? |
au prompt du système et appuyez sur RETURN. L'écran affichera un résumé de l'utilisation de COMP et des formulaires de saisie de ligne de commande valides, comme illustré à la figure suivantes :
COMP Version 2.xx The COMP utility compares the contents of two files or two specified sets of files. Normally, COMP is used after a copy operation to verify that the files were copied correctly. The files that are specified for comparison can be on the same drive or on different drives. They can also be in the same or different directories. Wildcard characters are allowed in one or both file specifications. Syntax: COMP ? COMP [filespc1 [filespc2]] |
L'écran d'aide est suivi du prompt du système, ce qui vous permet de vous référer facilement aux informations fournies lorsque vous entrez une ligne de commande COMP.
Prompts de saisie et réponses interactives
Si vous entrez uniquement le nom de la commande (COMP) au prompt du système et appuyez sur RETURN, COMP vous demandera d'entrer les paramètres filespc1 et filespc2. Il s'agit de la méthode d'entrée interactive pour appeler COMP. Lorsqu'une opération de comparaison de fichiers est terminée, COMP vous invite à indiquer si vous souhaitez comparer des fichiers supplémentaires. COMP ne se terminera pas tant que vous n'aurez pas indiqué que vous ne souhaitez pas comparer d'autres fichiers.
Par exemple, si vous saisissez :
COMP |
au prompt du système et appuyez sur RETURN, l'écran affiche :
Enter primary file name |
Vous devez ensuite entrer la spécification de fichier (filespc1) du premier des deux fichiers que vous souhaitez comparer. Lorsque vous avez saisi la spécification du fichier, appuyez sur RETURN. L'écran affiche :
Enter 2nd file name or drive id |
Vous devez ensuite entrer la spécification de fichier (filespc2) du deuxième des deux fichiers que vous souhaitez comparer. Lorsque vous avez saisi la spécification du fichier, appuyez sur RETURN. L'opération de comparaison de fichiers commencera.
Lorsque vous spécifiez les paramètres filespc1 et filespc2, vous pouvez utiliser des caractères génériques pour comparer deux groupes de fichiers plutôt que deux fichiers individuels. L'utilisation de caractères génériques dans les deux spécifications de fichier entraîne la comparaison de tous les fichiers correspondant à filespc1 avec les fichiers correspondants correspondant à filespc2. Un exemple montrant l'utilisation de caractères génériques est fourni plus loin dans cette page.
Vous pouvez comparer des fichiers se trouvant dans des répertoires différents et/ou sur des disques différents. Si vous entrez uniquement un nom d'unité de disque (d:) ou un nom de chemin pour filespc1 et/ou filespc2, alors COMP assume le nom de fichier *.*. Autrement dit, COMP suppose que vous souhaitez comparer tous les fichiers sur le disque spécifié ou dans le répertoire spécifié si *.* est supposé pour filespc1. Si vous entrez uniquement un nom d'unité de disque ou un nom de chemin pour filespc2, COMP suppose que le nom du deuxième fichier est le même que le nom du premier fichier.
Si des discordances sont détectées par COMP lors de la comparaison de fichiers, un message d'erreur s'affiche pour chaque discordance, comme décrit dans Concept préliminaire de cette page. Si aucune non-concordance n'est trouvée, le message Files compare OK s'affiche. Dans les deux cas, lorsque l'opération de comparaison est terminée et COMP affiche :
Compare more files (Y/N)? |
Vous devez saisir Y ou N au prompt. Il n'y a pas de réponse par défaut.
Si vous souhaitez comparer plus de fichiers, entrez Y. La commande COMP vous demandera filespc1 et filespc2.
Si vous ne souhaitez plus comparer de fichiers, entrez N. La commande COMP se terminera, puis le prompt du système s'affichera.
Entrée de ligne de commande
La méthode d'entrée de la ligne de commande pour appeler COMP nécessite que vous entriez des paramètres de ligne de commande pour les fichiers à comparer. Autrement dit, vous devez saisir les spécifications de fichier pour filespc1 et filespc2. Lorsque l'opération de comparaison de fichiers est terminée, COMP vous demandera d'indiquer si vous souhaitez comparer des fichiers supplémentaires. Si vous indiquez que vous souhaitez comparer davantage de fichiers, COMP commence à fonctionner en mode interactif ; c'est-à-dire que COMP vous demandera les paramètres requis.
Les spécifications que vous entrez pour filespc1 et filespc2 peuvent concerner des fichiers sur le même disque ou sur des disques différents et/ou dans le même répertoire ou des répertoires différents. Vous pouvez utiliser des caractères génériques pour comparer deux groupes de fichiers plutôt que deux fichiers individuels. L'utilisation de caractères génériques dans les deux spécifications de fichier entraîne la comparaison de tous les fichiers correspondant à filespc1 avec les fichiers correspondants correspondant à filespc2. Un exemple montrant l'utilisation de caractères génériques est fourni plus loin dans cette page.
Si vous entrez uniquement un nom d'unité de disque (d:) ou un nom de chemin pour filespc1 et/ou filespc2, alors COMP assume le nom de fichier *.*. Autrement dit, COMP suppose que vous souhaitez comparer tous les fichiers sur le disque spécifié ou dans le répertoire spécifié si *.* est supposé pour filespc1. Si vous entrez uniquement un nom d'unité de disque ou un nom de chemin pour filespc2, COMP suppose que le nom du deuxième fichier est le même que le nom du premier fichier.
Si vous entrez une seule spécification de fichier valide sur la ligne de commande COMP, COMP suppose que le fichier spécifié est filespc1 et vous demandera filespc2. Autrement dit, si vous entrez :
COMP filespec |
au prompt du système et appuyez sur RETURN, l'écran affichera :
Enter 2nd file name or drive id |
Vous devez ensuite entrer une spécification de fichier valide (ou un nom de l'unité de disque ou de chemin, si le deuxième fichier porte le même nom que le premier fichier) pour filespc2 et appuyer sur RETURN.
Si des discordances sont trouvées par COMP pendant la comparaison de fichiers, un message d'erreur s'affiche pour chaque discordance, comme décrit dans Concepts préliminaires de cette page. Si aucune non-concordance n'est trouvée, le message Files compare OK s'affiche. Dans les deux cas, lorsque l'opération de comparaison est terminée, COMP affiche :
Compare more files (Y/N)? |
Vous devez saisir Y ou N au prompt. Il n'y a pas de réponse par défaut.
Si vous souhaitez comparer plus de fichiers, entrez Y. COMP commence à fonctionner en mode interactif et vous invite à spécifier les fichiers à comparer.
Si vous ne souhaitez plus comparer de fichiers, entrez N. COMP se terminera et le prompt du système s'affichera.
Comparer deux fichiers
Supposons que vous venez de copier un fichier de données d'un disque de programme de l'unité de disque A vers un disque de données de l'unité de disque B et que vous vouliez vous assurer que les deux fichiers sont identiques avant de supprimer le fichier d'origine du disque de programme. Supposons que le nom du fichier d'origine est OUTPUT.DAT et que vous l'avez copié dans le fichier BACKUP.DAT. Pour vérifier si le contenu des deux fichiers sont identiques, vous pouvez saisir :
COMP A:OUTPUT.DAT B:BACKUP.DAT |
au prompt du système et appuyez sur RETURN.
Remarque : Cet exemple et les suivants supposent que COMP est disponible sur le disque de l'unité de disque par défaut. Si ce n'est pas le cas, vous devez faire précéder le nom de la commande du nom de l'unité de disque approprié (d:).
Lorsque vous appuyez sur RETURN, la comparaison des deux fichiers commence et l'écran affiche :
A:OUTPUT .DAT and B:BACKUP .DAT |
Si aucune discordance n'est trouvée (si les deux fichiers sont en fait identiques), l'écran affiche :
Files compare OK |
puis COMP vous demande :
Compare more files (Y/N)? |
Si des discordances sont trouvées (si les fichiers ne sont pas identiques), l'écran affiche un message sous la forme :
Compare error at offset xxxxxxxx File 1 = yy File 2 = zz |
pour chaque discordance (jusqu'à un maximum de dix) comme décrit dans Concepts préliminaires de cette page. Si des incompatibilités ont été trouvées, vous voudrez répéter l'opération de copie avant de supprimer le fichier d'origine.
Dans les deux cas (que les fichiers soient identiques ou non), COMP demande :
Compare more files (Y/N)? |
lorsque l'opération de comparaison est terminée.
Utilisation de caractères génériques avec COMP
Supposons que vous souhaitiez comparer deux groupes de fichiers ayant des noms de fichiers principaux correspondants mais des extensions différentes. Supposons qu'un groupe de fichiers se trouve sur le disque dans l'unité de disque A et se compose des fichiers LETTER.TXT, OUTLINE.TXT et CONTACT.TXT. Supposons que l'autre groupe de fichiers se trouve sur le disque dans l'unité de disque B et se compose des fichiers LETTER.BAK, OUTLINE.BAK et CONTRACT.BAK. Pour comparer ces deux groupes de fichiers, vous pouvez saisir :
sssCOMP A:*.TXT b:*.BAK |
au prompt du système et appuyez sur RETURN. Pour chaque fichier sur le disque dans l'unité de disque A ayant l'extension .TXT, COMP localisera le fichier .BAK sur le disque dans l'unité de disque B ayant le même nom de fichier principal et comparera ces deux fichiers.
Au fur et à mesure que chaque paire de fichiers est comparée, l'écran affiche :
A:filename.TXT and B:filename.BAK |
où filename est le nom de fichier principal des fichiers comparés.
Pour chaque discordance trouvée lors de chaque comparaison, l'écran affiche un message d'erreur de discordance comme décrit dans Concepts préliminaires de cette page.
Pour chaque comparaison terminée avec succès (pour chaque comparaison dans laquelle aucune non-concordance n'est trouvée), l'écran affiche :
Files compare OK |
avant de commencer la comparaison suivante.
Lorsque tous les fichiers ont été comparés, COMP demande :
Compare more files (Y/N)? |
Notez que vous pouvez également utiliser des caractères génériques pour comparer un fichier à plusieurs fichiers en séquence. Lorsque vous faites cela, cependant, vous devez vous assurer que vous entrez la spécification de fichier ambiguë (la spécification de fichier incluant des caractères génériques) en tant que filespc1 et le fichier spécifique en tant que filespc2. Si vous entrez les paramètres dans l'ordre inverse, filespc1 ne sera comparé qu'au premier fichier correspondant à la spécification de fichier ambiguë (filespc2). De plus, si vous entrez la spécification de fichier ambiguë *.* pour filespc2, COMP recherchera un fichier portant le même nom que filespc1.
Par exemple, supposons que vous ayez un fichier nommé DATA.EXP dans le répertoire courant du disque dans l'unité de disque B et que vous souhaitiez le comparer avec un certain nombre d'autres fichiers sur le disque dans l'unité de disque E. Supposons que les fichiers sur le disque dans l'unité de disque E se trouvent dans le sous-répertoire \PROGRAM\ARCHIVES et sont nommés RUN1.EXP, RUN2.EXP, RUN3.EXP et RUN4.EXP. Pour comparer DATA.EXP avec chacun des fichiers de \PROGRAM\ARCHIVES, vous devez saisir :
COMP E:\PROGRAM\ARCHIVES\*.* B:DATA.EXP |
au prompt du système et appuyez sur RETURN. L'écran afficherait :
E:\PROGRAM\ARCHIVES\RUNn.EXP and B:DATA.EXP |
où n est un nombre de 1 à 4.
Si des non-concordances sont trouvées, un message d'erreur de non-concordance s'affiche pour chacune, comme décrit dans Concepts préliminaires. Si aucune discordance n'est trouvée, le message File compare OK s'affiche, puis le fichier suivant dans \PROGRAM\ARCHIVES est comparé à DATA.EXP. L'écran affiche :
E:\PROGRAM\ARCHIVES\RUNn B:DATA.EXP |
pour la nouvelle comparaison de fichiers. La comparaison de fichiers se poursuit de cette manière jusqu'à ce que les quatre fichiers de \PROGRAM\ARCHIVES aient été comparés à DATA.EXP.
Une fois les comparaisons terminées, COMP affiche :
Compare more files (Y/N)? |
Si vous aviez saisi les paramètres de la ligne de commande dans l'ordre inverse (si vous aviez saisi COMP B:DATA.EXP E:\PROGRAM\ARCHIVES\*.*), COMP n'aurait tenté qu'une seule comparaison de fichiers. Autrement dit, COMP aurait recherché un fichier nommé DATA.EXP dans le répertoire spécifié et, s'il l'avait trouvé, l'aurait comparé à DATA.EXP dans le répertoire actuel du disque dans l'unité de disque B.
Vous pouvez également appeler COMP en utilisant des caractères génériques supposés. Autrement dit, si vous entrez uniquement un nom de l'unité de disque ou un nom de chemin d'accès pour une spécification de fichier, COMP utilise le nom de fichier *.*. Un exemple de cas où vous pourriez appeler COMP de cette manière est que vous souhaitiez comparer tous les fichiers d'un répertoire avec tous les fichiers d'un autre répertoire. Par exemple, supposons que vous souhaitiez comparer des fichiers dans deux sous-répertoires sur le disque par défaut et que les sous-répertoires sont \THIS\DIR et THIS\SUBDIR. Pour comparer tous les fichiers de ces deux sous-répertoires, vous pouvez saisir :
COMP \THIS\DIR \THAT\SUBDIR |
au prompt du système et appuyez sur RETURN. La commande COMP terminerait les comparaisons de fichiers comme si vous aviez saisi la ligne de commande :
COMP \THIS\DIR\*.* \THAT\SUBDIR\*.* |
Messages d'erreur
Files are different sizes Compare more files (Y/N)? |
EXPLICATION : La commande COMP ne comparera que les fichiers de même taille, comme indiqué dans les entrées de répertoire des fichiers. Ce message s'affiche si les fichiers que vous avez spécifiés pour la comparaison n'ont pas la même taille. Si vous souhaitez comparer d'autres fichiers, entrez Y au prompt et continuez avec COMP. Si vous ne souhaitez pas comparer d'autres fichiers, entrez N. Le prompt du système s'affiche.
filespec - File not found Compare more files (Y/N)? |
EXPLICATION : Ce message s'affiche si un fichier que vous avez spécifié (pour filespc1 ou filespc2) ne se trouve pas sur le disque par défaut ou spécifié ou dans le répertoire actuel ou spécifié. Assurez-vous que vous avez entré la spécification de fichier correcte et que le disque approprié est disponible. Pour invoquer la comparaison de fichiers souhaitée, entrez Y au prompt, puis entrez les spécifications de fichier correctes aux prompts COMP.
Incorrect DOS version |
EXPLICATION : Ce message s'affichera si vous avez démarré votre système avec une version de MS-DOS antérieure à la version 2. Pour que vous puissiez utiliser COMP, le MS-DOS version 2 ou supérieure doit résider en mémoire.
Insufficient memory |
EXPLICATION : Ce message s'affiche si la mémoire disponible n'est pas suffisante pour que COMP termine la comparaison de fichiers. Si cela se produit, vous pouvez effectuer l'une des opérations suivantes pour libérer de la mémoire :
- Redémarrez votre système pour effacer la mémoire des programmes restant résidents en mémoire après l'exécution. (Ces programmes, appelés programmes résidents TSR (Terminate-and-Stay-Resident), incluent les utilitaires PSC.) Réinvoquez COMP avant d'exécuter d'autres programmes.
- Si le simple redémarrage de votre système ne résout pas le problème, vous pouvez réduire le nombre de BUFFERS définis dans le fichier CONFIG.SYS.
Invalid drive specification |
EXPLICATION : Ce message s'affiche si vous avez entré un nom d'unité de disuqe non valide dans le cadre de la ligne de commande COMP ou en réponse à un prompt COMP. Ce message est suivi du prompt système ou d'un prompt COMP. Entrez à nouveau le nom de l'unité de disque ou la spécification du fichier, en vous assurant que vous utilisez un nom de l'unité de disque valide pour votre système.
pathname - Invalid path Compare more files(Y/N)? |
EXPLICATION : Ce message s'affiche si un nom de chemin de répertoire que vous avez entré n'est pas un nom de chemin valide ou n'existe pas sur le disque par défaut ou spécifié. Si vous souhaitez continuer avec COMP, entrez Y au prompt et répondez aux prompts avec des entrées valides. Si vous ne souhaitez pas continuer avec COMP, entrez N au prompt. Le prompt du système s'affiche.