LA COMMANDE COMMAND
Commande externe. Fonctionne sur la ligne de commande ou dans un batch.
Lance a nouveau l'interpreteur de commande du DOS.
Un interpreteur de commandes est un programme qui affiche la ligne de commande vous permettant d'entrer au clavier les differentes commandes. Ce programme reconnait certaines commandes qui vous permettent de gerer les donnees sur votre PC (les commandes internes) et vous permet d'executer des commandes externes (des logiciels ou d'autres commandes externes). Pour quitter le nouvel interpreteur de commandes et revenir a l'interpreteur initial, tapez: [EXIT].
Syntaxe
COMMAND [[lecteur:]chemin] [peripherique] [/E:nnnnn]
[/Y [/C commande|/K commande]]
Dans le fichier [CONFIG.SYS], tapez: [SHELL]=[[lecteur-dos:]chemin-dos] COMMAND.COM [[lecteur:]chemin]
[peripherique] [/E:nnnn] [/P [/MSG]]
Parametres
[lecteur:]chemin
Indique l'emplacement du fichier COMMAND.COM a l'interpreteur de commandes lorsque la partie transitoire du programme doit etre a nouveau chargee. Le fichier COMMAND.COM ne se trouve pas dans votre repertoire racine. Ce parametre est utilise pour definir la variable d'environnement [COMSPEC].
peripherique
Specifie un peripherique d'entree et de sortie. Pour plus d'informations sur ce parametre, voyez la commande [CTTY].
[lecteur-dos:]chemin-dos
Specifie l'emplacement du fichier COMMAND.COM.
Commutateurs
/C commande
Specifie que l'interpreteur de commande va executer la commande specifiee dans la chaine puis quitter. Ce commutateur doit se situer a la fin de la ligne de commande.
/E:nnnnn
Specifie la taille de l'environnement, nnnnn etant le nombre d'octets. La valeur de nnnnn doit etre comprise entre 160 et 32768. Le DOS arrondit ce chiffre au multiple de 16 superieur, 256 etant la valeur par defaut.
/K:commande
Execute le programme, la commande ou le batch specifie et affiche la ligne de commande du DOS. Ce commutateur doit se situer a la fin de la ligne de commande de la commande COMMAND. Ce commutateur est tres pratique pour specifier un fichier de commande de lancement autre que C:\[AUTOEXEC.BAT] sur la ligne de commande DOS de windows. Il suffit en effet d'ouvrir le fichier DOSPRMPT.PIF a l'aide de Pifedit (windows 3.x uniquement. Sous windows 9x, il faut faire un clic droit sur le fichier DOSPRMPT.PIF, choisir dans le menu contextuel "Proprietes" et rajouter le commutateur /K a la fin du champ "Ligne de commande") et d'entrer le commutateur /K dans la zone Parametres optionnels. Afin d'eviter tout probleme avec les applications et les programmes d'installation qui modifient le fichier [AUTOEXEC.BAT], mieux vaut ne pas utiliser ce commutateur sur la ligne de commande [SHELL] du fichier [CONFIG.SYS].
/P
A ne specifier que lorsque COMMAND est execute a l'aide de la commande [SHELL] du fichier [CONFIG.SYS]. Le commutateur /P permet d'obtenir une copie permanente de l'interpreteur de commandes, qui ne peut alors pas etre interrompu a l'aide de la commande [EXIT]. Si vous specifiez /P, le DOS execute le fichier [AUTOEXEC.BAT] avant d'afficher la ligne de commande. S'il n'y a aucun fichier [AUTOEXEC.BAT] dans le repertoire racine du lecteur de lancement, le DOS execute les commandes [DATE] et [TIME]. Si le fichier [CONFIG.SYS] ne contient pas de commande [SHELL], COMMAND.COM est charge automatiquement depuis le repertoire racine a l'aide du commutateur /P.
/MSG
Indique que tous les messages d'erreur doivent etre stockes en memoire (normalement, certains messages sont uniquement stockes sur le disque). Ce commutateur n'est utile que lorsque vous executez le DOS a partir de disquettes. Vous devez le specifier.
Dirige COMMAND.COM pour vous deplacer dans le batch specifie par les commutateurs /C ou /K. Ce commutateur est utile pour le [debogage des batchs]. Par exemple, vous pouvez utiliser la commande COMMAND /Y /C TEST pour vous deplacer ligne par ligne dans le batch "TEST.BAT". Le commutateur /Y requiert soit le commutateur /C soit /K. Afin d'executer COMMAND et d'augmenter definitivement l'espace occupe par la table d'environnement, la meilleure solution est de passer par la commande [SHELL].
Exemples
La commande suivante indique que l'interpreteur de commandes du DOS doit lancer un nouvel interpreteur a partir du programme en cours, executer un programme de commandes MONBAT.BAT et revenir a l'interpreteur initial:
command /c monbat.bat.
La commande [CONFIG.SYS] ci dessous specifie que COMMAND.COM se trouve dans le repertoire DOS du lecteur C:: shell=c:\dos\command.com c:\dos\ /e:1024. Cette commande indique au DOS d'appliquer la variable d'environnement [COMSPEC] a C:\DOS\COMMAND.COM. Elle cree egalement un environnement de 1024 octets pour l'interpreteur de commandes.
La commande suivante lance une session de COMMAND.COM et execute le fichier MYBATCH.BAT, en se deplacant dans le fichier commande par commande: commande /y /c mybatch.bat
Taille maximale et minimale d'environnement
Si nnnnn est inferieur a 160 ou superieur a 32768, le DOS utilise la valeur par defaut (256 octets) et affiche le message suivant: Valeur du parametre en dehors des limites permises.
Changement de peripherique
Vous pouvez specifier un peripherique d'entree sortie different (par exemple, [AUX]) a l'aide du parametre de peripherique. Pour plus d'informations, voyez la commande [CTTY].
Execution de plusieurs interpreteurs de commandes
Lorsque vous lancez un nouvel interpreteur de commande, le DOS cree un nouvel environnement de commandes qui est une copie de l'environnement parent. Les eventuelles modifications apportees au nouvel environnement n'influencent aucunement l'environnement initial. La taille par defaut du nouvel environnement equivaut a 256 octets ou a la taille de l'environnement en cours, arrondie au multiple de 16 superieur. Pour adopter une taille autre que celle par defaut, la taille de l'environnement en cours correspond a la memoire utilisee et non a celle specifiee a l'aide du commutateur /E precedent.
Memoire residente et non residente
Le DOS charge en memoire l'interpreteur de commandes en deux parties: la partie residente (constamment en memoire) et la partie transitoire (en haut de la memoire conventionnelle). Certains programmes occupent la partie transitoire de COMMAND.COM lorsqu'ils s'executent. La variable d'environnement [COMSPEC] identifie ou est situe le COMMAND.COM sur le disque. Si cette variable est definie en fonction d'un lecteur de disquette, le DOS vous invitera peut etre a inserer une disquette contenant COMMAND.COM. Si le DOS est charge dans la zone de memoire superieure, une partie du fichier COMMAND.COM resident l'est egalement, ce qui libere de la memoire conventionnelle pour les programmes.
Utilisation du commutateur /MSG
Generalement, le DOS stocke de nombreux messages d'erreur dans le fichier COMMAND.COM et non en memoire. Pour les afficher, il doit donc les extraire du disque contenant COMMAND.COM. Si vous executez le DOS a partir de disquettes, il ne peut extraire les messages, a moins que COMMAND.COM ne se trouve sur le disque present dans le lecteur A:. Si ce n'est pas le cas, le DOS affiche un message tres succinct: Erreur d'analyse ou Erreur etendue. Pour que le DOS affiche les messages d'erreur dans leur integralite, utilisez le commutateur /MSG avec COMMAND. Vous serez ainsi assure que les messages d'erreur sont stockes en memoire et donc disponibles a tout moment. Si votre systeme est equipe d'un lecteur de disquette, utilisez le commutateur /MSG avec COMMAND, a moins que vous ayez besoin de la memoire occupee par les messages d'erreur. Si vous utilisez le commutateur /MSG, vous devez egalement specifier le commutateur /P.
Commandes internes
La commande COMMAND.COM est appelee interpreteur de commandes car elle lit et traite toutes les commandes entrees au clavier. Certaines commandes sont reconnues et executees par COMMAND.COM, dont elles font partie integrante (commandes internes). D'autres sont des programmes distincts situes sur le disque dur, que le DOS charge comme n'importe quel programme normal. Les commandes suivantes sont reconnues et executees par COMMAND.COM: