Fichier associé : autoexec.bat (système MS-DOS ET WINDOWS)

Interpréteur : COMMAND.COM (appelé par COMMAND.COM à la ligne : 00008100)

Exécute des commandes DOS inscrites.

Exemple du fichier autoexec.bat
===============================
// appel du programme c:\win98se\command\mode.exe avec attribut
// le chemin du programme "mode" n'est pas définit car il est 
// définit dans la variable d'env. "path" voir la propriété set
mode con codepage prepare=((850) C:\WIN98SE\COMMAND\ega.cpi)
mode con codepage select=850

// appel du programme c:\win98se\command\keyb.exe avec attribut
keyb cf,,C:\WIN98SE\COMMAND\keybrd2.sys

// REM : fonction interne pour insérer un commentaire
rem insert by Sun Microsystems setup

// SET : fonction interne pour définir des variables d'environnement DOS 
set DBROOT=C:\internet\sun\Adabas
set DBWORK=C:\internet\sun\Adabas\sql
set DBCONFIG=C:\internet\sun\Adabas\sql

// dans un fichier .bat, les variables d'environnement sont appelées 
// avec deux signes % les entourants comme la variable d'env. "path"
set path=%path%;C:\internet\sun\Adabas\bin

SET PATH=C:\FSC\PSORTOCX;C:\FSC\COBOL97;%PATH%;C:\INTERNET\SUN\ADABAS\PGM
SET LIB=C:\FSC\COBOL97
  

Paramètres avec des espaces

2004/05/23

En DOS, lorsque les paramètres contiennent des espaces, il faut entouré les commentaires de double-guillemets. Exemple: maCommande "ma premiere chaine" "ma deuxieme chaine".

Paramètres en variable

2004/07/19

Lorsqu'on appelle le fichier .bat avec des paramètres, ses paramètres sont stockés dans les variables spéciales %1, %2, %3, %4, etc.

Syntaxe

1. Enlever l'affichage 
1.1 d'une commande:  @commande
1.2 de toutes les commandes suivantes: ECHO OFF
1.3 de la commande ECHO OFF et des commandes suivantes: @ECHO OFF

2. Paramètres
2.1 Le premier paramètre après le nom de la commande est %1, le deuxième %2

3. Variable
3.1 Déclaration et affectation
    SET NOMVARIABLE=BLA
3.2 Utilisation (substitution)
    %NOMVARIABLE% # note qu'elle est substitué avant l'exécution de la ligne (donc si c'est le premier mot clé, alors c'est la commande qui sera exécutée)

4. Conditions
4.1 IF "%1" == "chaine" GOTO LABEL   # %1 est substitué par le premier paramètre, argv[1] en C
    :LABEL    # le caractères deux-points doit être en début de ligne, l'étiquette peut être n'importe où dans le fichier
4.2 commande
    IF ERRORLEVEL == 1 GOTO LABEL    #  ERRORLEVEL est la valeur retournée par une commande   
    :LABEL
4.3 SET NOMVARIABLE=BLA # déclaration et affectation de variable
    IF "%NOMVARIABLE%" == "" GOTO LABEL # Substitution de variable avec %nomvariable%
    :LABEL