B5) Tests

Un seul possible, IF, mais trois formes:

IF [not] chaine1==chaine2

IF [not] exist fichier commande

IF [not] errorlevel valeur commande

Hélas pas de AND (et) ni de OR (ou): il faut tricher...

IF1.BAT

1 if %lecteur%==A: goto cas-a

2 if %lecteur%==a: goto cas-a

................

x :cas-a

Dommage, ça plante si %lecteur% est vide, vu qu'il doit y avoir quelque chose des deux côtés de ==... Ecrire plutôt:

IF2.BAT

1 if "%lecteur%"=="A:" goto cas-a

2 if "%lecteur%"=="a:" goto cas-a

Ce qui veut dire "aller en cas-a si lecteur = a: ou lecteur = A:'

Pour un ET

IF3.BAT

1 if "%mari%"=="toto" if "%femme%"=="tata" echo joli couple

Ce qui se traduit par SI ... ET SI ... alors ...

SI ... ALORS ... SINON ...

IF4.BAT

1 if %DOSVER%==7.0 goto sept

2 echo ben non c'est pas le 7.0

3 goto suite

4 :sept

5 echo Novell Dos 7 ?

6 :suite

Si la condition de la ligne 1 est vérifiée, on exécute la ligne 5, sinon c'est la ligne 2 puis 3.

Remarque: pour vérifier si le répertoire c:temp existe on fait un truc du genre: if exist c:tempnul ...