Table des matières

Les scripts sous Windows

Nommer un fichier de commandes

Exemples : toto.cmd.

Étiquettes

Les étiquettes sont utiles pour indiquer ou aller dans le script avec la commande goto. Il faut mettre un deux-points (:) devant le nom de l'étiquette.

:ETIQUETTE

Le nom de l'étiquette ne peut pas être un mot réservé ou le nom d'une commande.

Commandes

echo

  1. affiche un texte
  2. affiche une ligne vide : echo; ou echo.
  3. active / désactive l'affichage de commandes : echo on ou echo off
  4. utile au déboggage
  5. @ devant une commande empêche son affichage

Syntaxe : echo [{on|off}] [message]

goto

Branche inconditionnellement à l'étiquette spécifiée. Syntaxe : goto nom_de_letiquette

goto suite
goto :EOF

rem

Permet d'inclure un commentaire ou désactive une commande.

Syntaxe : rem commentaire

REM Ceci est un commantaire

if

Traitement conditionnel dans les scripts de commandes.

Syntaxe : if [not] [exists fichier | error_level ] commande

if exists c:\toto.txt goto existe
goto erreur_introuvable
echo test_1

:erreur_introuvable
echo fichier non trouvé !
goto fin

echo test_2
:existe
echo le fichier existe
:fin

errorlevel

Dans le cas des errorlevel, la commande if teste si effectivement le errorlevel est plus grand ou égal au errorlevel spécifié.

  if errorlevel 3 goto err_3

se traduit par : « si errorlevel >= 3 alors va à err_3. C'est pour cette raison qu'on éliminera les errorlevel du plus grand au plus petit.

if errorlevel 3 goto err_3
if errorlevel 2 goto err_2
if errorlevel 1 goto err_1

Comparaison de chaines

La commande if peut comparer des chaines dans les scripts :

if chaine1 == chaine2 commande

Exists

Il est possible de vérifier si un fichier existe.

if exists nom_fichier goto effacer_fichier
if not exists goto creer_fichier

Commande ''if'' avec paramètres

if "%1" == "" goto err_1
if .%1. == .. goto err_2

Redirections

La sortie standard d'une commande est l'écran. Il est possible de rediriger cette sortie ailleurs.

Pour ne pas afficher une sortie de pause :

pause >nul
echo Appuyez sur une touche maintenant...

Redirection vers un fichier :

dir >toto.txt

Redirection vers un fichier en « append » :

dir >>toto.txt

Paramètres positionnels