Documente Academic
Documente Profesional
Documente Cultură
Laporte
LMS
Ce programme affiche la date et lheure (et propose de les changer) puis affiche le contenu du rpertoire courant sur 5 colonnes. Pour appeler ce programme, il suffit de lappeler en indiquant son nom la suite de linvite de commande (le fichier .bat doit se trouver dans le chemin courant) C:\> exemple1 Lance lexcution du programme
LE PASSAGE DE PARAMETRE
Les commandes incluses dans le fichier peuvent tre paramtres, cest dire que les objets de ces commandes sont des paramtres formels. Les paramtres rels seront fournis lors du lancement du fichier batch : C :\>nom-fichier-batch param1 param2 ... Exemple : C :\>affich rouge noir Nom du fichier batch sans lextension 1er paramtre 2me paramtre
S. Laporte
LMS
Lors de lappel du fichier, les paramtres rels seront substitus aux paramtres formels mesure de lexcution des diffrentes commandes. Les paramtres formels scrivent %n, o n est un chiffre de 0 9 reprsentant la position du paramtre dans la liste des paramtres rels fournie lors du lancement du fichier de commande. %0 reprsente le nom du fichier de commande lui-mme. %1 reprsente la valeur du 1er paramtre. %n reprsente la valeur du nime paramtre. Exemple : Echo %1 rouge Exemple : Supposons que la commande MOVE nexiste pas. Construire un fichier batch se nommant bouger.bat permettant de dplacer un fichier ( laide de COPY et DEL). Le premier paramtre reprsentera le fichier quon souhaite dplacer, le second paramtre reprsentera le chemin o on veut le placer. Exemple dappel : bouger texte.doc c:\doc\francais de lexemple prcdent, donne comme rsultat :
On trouvera dans le fichier bouger.bat les commandes suivantes : COPY %1 %2 DEL %1 Il y a, lexcution, substitution des paramtres rels (texte.doc et c:\doc\francais) et les commandes finalement excutes seront : COPY texte.doc c:\doc\francais DEL texte.doc
Linstruction ECHO
MS-DOS affiche sur lcran les commandes des fichiers batch avant de les excuter. Linstruction ECHO dirige cette visualisation. ECHO OFF ECHO ON ECHO ECHO <msg> inhibe cette visualisation rtablit cette visualisation (mode normal) sans argument, dlivre lcran le mode actuel (on ou off) dirige le contenu du message vers lcran
Linstruction REM
REM <msg> agit comme ECHO sauf que REM nest pris en compte que dans le mode ECHO ON. En fait, ECHO sutilise pour renseigner loprateur et REM pour documenter le fichier de commande = commentaire.
LMS
Linstruction PAUSE suspend lexcution du fichier de commande et affiche "Presser une touche pour continuer... " PAUSE sert pour donner loprateur : le temps de rflchir la possibilit de changer une disquette la possibilit dinterrompre lexcution par CTRL-C
Le Label et GOTO
Le label est une chane de 1 8 caractres alphanumriques. Il apparat en position dargument dans linstruction GOTO. Utilis comme tiquette sur une ligne de commande, il doit tre prcd de deux points : Exemple : GOTO FIN .............. :FIN ..............
Si le label nest pas dfini en position dtiquette lors dun GOTO, lexcution du fichier est stoppe. Le message label not found saffiche.
Linstruction IF
Linstruction conditionnelle se prsente sous la forme IF [NOT] <condition> <commande> Attention, un if ne peut tre suivi que dune seule commande (ou plusieurs concatnes par &) Tester lgalit : == IF %1 == STOP GOTO FIN Tester lexistence dun fichier : EXIST IF NOT EXIST c:\langage\pascal\%1.pas GOTO ERROR A partir de WNT, il est possible dutiliser ELSE avec IF, seulement si le ELSE est sur la mme ligne que le IF. Exemple : Crer un fichier de commande affichant un message pour dire si le fichier pass en paramtre est prsent ou non dans le rpertoire courant. Exemple dappel : trouve toto.xls On trouvera dans le fichier trouve.bat les commands suivantes : IF NOT EXIST %1 GOTO error ELSE ECHO Ce fichier est prsent GOTO fin :error ECHO Ce fichier est absent :fin
S. Laporte
LMS
Il existe de nombreuses variables denvironnement. Il est possible den ajouter. En voil quelques unes : CD : chemin en cours WINDIR : contient le chemin du rpertoire Windows TEMP : chemin du rpertoire temporaire de Windows DATE : la date du jour TIME : lheure courante OS : systme dexploitation install USERNAME : nom de lutilisateur sur le rseau COMPUTERNAME : nom de lordinateur sur le rseau ERRORLEVEL : numro derreur (0 sil ny en a pas) PATH : cest une variable denvironnement trs importante (voir son explication ci aprs) Pour afficher toutes les variables denvironnement disponibles, il suffit de taper la commande SET. Les variables denvironnement dynamiques (qui bougent) telles que DATE, TIME ou CD napparaissent pas avec SET
LA COMMANDE SET
Cette commande, sans paramtre, permet comme on la vu de lister les variables denvironnement. Mais on peut utiliser cette commande pour crer ses propres variables denvironnement dans un fichier batch. Syntaxe SET variable = valeur SET dossier = C:\Mes Documents\Travail SET nom = %1% La variable nom prend la valeur du 1 paramtre Pour supprimer une variable, il suffit de la faire suivre du signe = tout seul SET dossier = Supprime la variable dossier
LA COMMANDE PATH
Pour quun fichier batch (de mme quun .exe ou quun .com) puisse tre excut, il faut quil se trouve : - soit dans le rpertoire en cours - soit dans un des chemins enregistrs dans la variable PATH. Si ce nest pas le cas un message derreur apparat, du genre xxxx n'est pas reconnu en tant que commande interne ou externe, un programme excutable ou un fichier de commandes. La variable denvironnement PATH contient tous les rpertoires que le systme explore si on lui demande dexcuter un fichier .bat, .exe ou .com nexistant pas dans le rpertoire courant. La variable PATH est constitue dune liste de chemins de rpertoires spars par des ; Ainsi, si vous tapez monbatch, linterprteur de commande va dabord le chercher dans le rpertoire courant. Sil ny est pas, il cherche dans le premier rpertoire contenu dans le path, puis dans le second.. jusqu ce que le fichier soit trouv (auquel cas il est excut) ou bien que tous les rpertoires du PATH aient t explors. Dans ce cas, le message derreur apparat. Il est possible dajouter un chemin dans le path en utilisant la forme suivante : PATH = %PATH%;c:\Alsi Ici, on ajoute ;c:\Alsi la variable PATH
4