MS-DOS L’embranchement conditionnel
Et les étiquettes
Un
embranchement conditionnel est une direction que doit suivre l’exécution d’un
programme selon si une condition est remplie ou non.
Ici,
la condition que nous allons utiliser, est la vérification de l’existence d’un
fichier dans le répertoire de travail.
En
fonction du résultat, on dirigera la suite de l’exécution du fichier de
commandes sur une partie du fichier ou sur une autre.
Nous
allons structurer notre fichier de commandes par des paragraphes que nous
allons intitulés par l’intermédiaire de la commande « REM ».
Créez
un dossier intitulé Travail dans la racine de votre disque dur.
Copiez
un fichier texte à l’intérieur de ce dossier et donnez-lui le nom
suivant : Film.Txt
Maintenant,
écrivons le fichier de commandes Test.Bat et saisissons son contenu :
@echo
off
REM
Voici le paragraphe qui test l’existence du fichier Film.Txt
If exist
C:\Travail\Film.Txt Goto ok
REM
Paragraphe échec le fichier Film.Txt n’existe pas
Echo
Désolé ! Pas de fichier Film
Goto
fin
:ok
REM
Paragraphe ok, le fichier Film existe
Echo
Bravo ! Le fichier Film existe
:fin
Et
voilà.
Il
ne vous reste plus qu’à exécuter ce fichier de commandes.
Que
va-t-il donc se passer durant l’exécution dans la tête de MS-DOS lorsqu’il va
lire ces commandes ligne par ligne ?
La
première ligne est exécutée, c’est :
@echo
off
Donc,
pas d’affichage pour les commandes qui seront exécutées.
La
seconde ligne, c’est :
REM
Voici le paragraphe qui test l’existence du fichier Film.Txt
Donc,
ici il s’agit d’une ligne de commentaire qui indique que nous allons vérifier
l’existence du fichier Film.Txt dans le répertoire Travail.
La
troisième ligne, c’est elle qui teste la présence du fichier
If exist
C:\Travail\Film.Txt Goto ok
Si
on devait traduire cette ligne en bon français, on obtiendrait ceci :
Si
le fichier Film.Txt existe,aller à l’étiquette ok
Par
conséquent, si le fichier Film existe, l’embranchement vers l’étiquette ok est
déclenché.
Sinon,
l’exécution continue à la ligne suivante.
Dans
ce cas, après avoir affiché le message d’échec, la commande Goto expédie la
suite de l’exécution à la fin du fichier.
Une
étiquette commence toujours par le signe de ponctuation deux points.
Pour
embrancher l’exécution vers une étiquette, on utilise la commande Goto suivie
du nom de l’étiquette.
Dans
la ligne de commande « If Exist », si vous souhaitez déclencher l’embranchement
si le fichier n’existe pas, plutôt que s’il existe, vous pouvez ajouter
« Not » devant Exist ».
If Not Exist Film.Txt Goto
Echec
Ainsi,
cette ligne de commande embrancherait l’exécution du programme à l’étiquette
Echec si le fichier Film.Txt n’existe pas.
Philippe
BOULANGER