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 ...