1001 Astuces Nam@ni
http://www.namani.net

GoTo

 

 

 

Renvoi à une étiquette dans un fichier de commandes.

Syntaxe:

GOTO [:Etiquette]

 

:Etiquette

 

Indique un endroit préalablement marqué pour effectuer un renvoi.

 

 

 

Notes:

En règle générale, un fichier de commandes s'exécute par ordre séquentiel à la manière d'une pile. Cependant, un programme doit permettre d'exécuter certaines opérations sous certaines conditions. Ainsi, la commande GOTO renvoie à un repère selon les conditions posées par le programme. Ce repère doit être défini au préalable. Si ce n'est pas le cas, vous allez recevoir le message :

 


Etiquette introuvable

 

De façon générale, la commande GOTO est utilisée avec une condition définie par la commande IF. Pour l'utiliser, vous devez observer un certain nombre de règles, dont voici les plus importantes:

 

    Une étiquette doit être précédée de deux-points et placée contre le bord gauche de l'écran. Si vous commencez la ligne par un espace, le repère n'a plus aucun effet.

    Une étiquette se compose de huit caractères maximum et accepte des lettres, des chiffres et des espaces à l'exclusion de tout autre séparateur comme, par exemple, le point-virgule ou le signe égal. Si vous dépassez le nombre de caractères autorisé en appelant deux étiquettes "CONTINUER1" et "CONTINUER2" par exemple, le repère est tronqué, ce qui risque de provoquer des réactions inattendues.

 

Etant donné que le système ne reconnaît que les huit premiers caractères (CONTINUE), le second repère sera purement et simplement ignoré.

 

    Le repère doit figurer seul sur une ligne. Toute chaîne de caractères ou commande qui suit un repère et ignorée.

Etant donné que le système ignore tous les caractères qui suivent un repère, vous pouvez vous en servir pour faire des commentaires comme, par exemple:

 


:LOOP Si la condition X=X de la ligne 14 est réalisée.

Vous pouvez introduire cette remarque sous la forme d'un repère isolé, qui n'est référencé par aucune commande.

 


:Commentaire

 

Cette astuce vous permet d'accélérer le traitement d'un fichier de commandes, puisqu'un repère n'est pas traité comme une commande à part entière par le processeur.

Evitez soigneusement les boucles infinies du genre :

 


@ECHO
OFF
:DEBUT
ECHO Sans issue
GOTO DEBUT
:FIN