<< Retour au sommaire

 

 

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