If
| Formát: | IF [NOT] [WARN] [ERROR] [FAIL] [<řetězec> EQ|GT|GE|MATCHES|CONTAINS <řetězec>] [CASE] [VAL] [EXISTS <soubor>] [SET <název promenné>] |
| Šablona: | NOT/S, WARN/S, ERROR/S, FAIL/S,, EQ/K, GT/K, GE/K, MATCHES/K, CONTAINS/K, CASE/S, VAL/S, EXISTS/K, SET/K, NOREQ/S |
| Účel: | Umožňuje podmíněné zpracování příkazů v dávkových souborech. |
| Cesta: | Vnitřní příkaz |
Příkaz IF umožňuje podmíněné zpracování příkazů v dávkovém souboru. Když je podmínka příkazu IF splněna, budou vykonány všechny příkazy ležící mezi příkazem IF a příkazem ELSE nebo ENDIF. Pokud podmínka splněna není, zpracování přejde na příkazy po klíčovém slově ELSE nebo ENDIF.
Podíváme jen na jednotlivá klíčová slova příkazu:
| Klíčové slovo | Popis |
| NOT: | Neguje podmínku, výsledek bude opačný, než by byl bez něj. |
| WARN: | Podmínka je splněna, pokud předchozí návratový kód byl větší nebo roven 5. |
| ERROR: | Podmínka je splněna, pokud předchozí návratový kód byl větší nebo roven 10. |
| FAIL: | Podmínka je splněna, pokud předchozí návratový kód byl větší nebo roven 20. To je možné pouze tehdy, pokud jste příkaz FAILAT nastavili na hodnotu vyšší než 20. |
| a EQ b: | Podmínka je splněna, pokud řetězce "a" a "b" jsou identické (mohou se lišit psaním velkých a malých písmen). |
| EXISTS <soubor>: | Podmínka je splněna, existuje-li <soubor>. |
| NOREQ | Nebude zobrazovat dialogové okno vyzývající uživatele k vložení disku, pokud test „EXISTS“ odkazuje na soubor na svazek, který není v tuto chvíli k dispozici. |
| SET <proměnná> | Podmínka je splněna, existuje-li proměnná prostředí. |
Dále příkaz IF podporuje relační operátory. Ty implicitně porovnávají textové hodnoty (podle ASCII kódů znaků), ale když použijete přepínač VAL, bude porovnávání pracovat s číselnými hodnotami.
Příkaz IF používá následující relační operátory:
| Operátor | Popis |
| EQ | Rovnost |
| GT | Větší než |
| GE | Větší nebo roven |
Výraz NOT GT umožňuje testovat, zda je první hodnota menší nebo rovna druhé hodnotě a výraz NOT GE testuje, jestli je první hodnota menší než hodnota druhá.
Příkaz IF může používat lokální nebo globální systémové proměnné. Systémové proměnné se zde uvádějí znakem "$".
Příklad
| IF EXISTS s:user-startup ECHO "Soubor existuje." ELSE ECHO "Soubor se ztratil!" ENDIF 7.Ram_Disk:> execute if_example Soubor existuje. |
Tento dávkový soubor zjišťuje, zda máte soubor "s:user- startup". Je-li vaše Amiga v pořádku, měla by odpověď být kladná.



