IF |
Si |
---|---|
AmigaDOS |
Syntaxe
IF [NOT][WARN][ERROR][FAIL] [str1 EQ str2][EXISTS name] |
Paramètres
Nom | Description |
---|---|
NOT | Ce paramètre permet d'inverser le résultat. |
WARN | Ce paramètre permet d'indiquer qu'il doit satisfaire un code de retour précédent (supérieur ou égale à 5). |
ERROR | Ce paramètre permet d'indiquer qu'il doit satisfaire un code de retour précédent (supérieur ou égale à 10). |
FAIL | Ce paramètre permet d'indiquer qu'il doit satisfaire un code de retour précédent (supérieur ou égale à 20). |
str1 EQ str1 | Ce paramètre permet d'indiquer que le texte de str1 et de str2 sont identiques (sans distinction majuscule/minuscules). |
EXISTS name | Ce paramètre permet d'indiquer qu'il faut que le fichier spécifié existe. |
Description
Cette commande permet d'autoriser les conditions dans les séquences de commandes.
Remarques
- Vous ne pouvez utiliser cette commande que dans un fichier de commandes EXECUTE. Si une ou plusieurs des conditions spécifiées sont remplies, la commande IF exécute toutes les commandes suivantes jusqu'à ce qu'il trouve une commande ENDIF ou ELSE correspondante; sinon, si les conditions ne sont pas remplies, il exécute tout ce qui suit une commande ELSE correspondante.
- Les commandes ENDIF et ELSE ne sont utiles que dans les séquences de commandes contenant IF. La commande ENDIF termine une commande IF; la commande ELSE fournit une alternative si les conditions IF échouent. Notez que les conditions et les commandes des commandes IF et ELSE peuvent s'étendre sur plusieurs lignes avant leurs ENDIF correspondants.
- Le tableau suivant montre certaines des façons dont vous pouvez utiliser les commandes IF, ELSE et ENDIF :
IF condition command ENDIF |
IF condition command ELSE command ENDIF |
IF condition command IF condition command ENDIF ENDIF |
Notez que ELSE est facultatif et que les IF imbriqués sautent au ENDIF le plus proche. Le paramètre ERROR n'est disponible que si vous définissez FAILAT sur une valeur supérieure à 10. De même, le paramètre FAIL n'est disponible que si vous définissez la commande FAILAT sur une valeur supérieure à 20.
Exemples
L'exemple suivant permet de détecter un paramètre non défini dans un fichier de commandes :
IF a EQ "" |
L'exemple suivant permet d'indiquer que si le fichier «work/prog» existe, alors l'AmigaDOS l'affiche. Sinon, l'AmigaDOS affiche le message «Fichier introuvable» et exécute la commande suivante dans la séquence de commandes.
IF EXISTS works/prog TYPE work/prog ELSE ECHO "Fichier introuvable" ENDIF |
L'exemple suivant permet de monter que si la commande s'est arrêtée avec un code retour >= 10, alors l'AmigaDOS ignore la séquence de commandes jusqu'à ce que vous définissiez une étiquette «erlab» avec la commande LAB :
IF ERROR SKIP errlab ENDIF |
L'exemple suivant permet de vérifier que le fichier «gladir» existe :
IF ERROR IF EXISTS gladir ECHO "Le fichier 'gladir', mais une erreur s'est quand même produite." ENDIF ENDIF |