Testování pro úroveň chyby v dávkových souborech

Prohlášení o odmítnutí odpovědnosti pro už nepodporovaný obsah KB

Tento článek byl napsán pro produkty, ke kterým již Microsoft nadále nenabízí podporu. Článek je tedy poskytován „tak, jak je“ a nebude už nadále aktualizován.

Souhrn

Microsoft MS-DOS "IF ERRORLEVEL < číslo >" příkaz zkontroluje, zda chyba úrovně dané číslo nebo vyšší. Pokud chcete zkontrolovat úroveň chyby, měli byste použít následující příkaz konstrukce

   IF ERRORLEVEL <N> IF NOT ERRORLEVEL <N+1> <COMMAND>

kde < N > je požadované číslo. < N + 1 > část příkazu musí být vypočteny jako je zadán příkaz, protože příkazový interpret systému MS-DOS nelze provádět matematické výpočty.

Další informace

Vnořené příkazy IF umožňují výběr konkrétní úroveň chyby, protože operátor NOT účinně obrací nerovnost. Příkaz

   IF ERRORLEVEL 5 ...

je ekvivalentní algebraický konstrukce

   IF E = 5 OR E > 5 THEN ...

Při příkazu

   IF NOT ERRORLEVEL 6

je ekvivalentní algebraický konstrukce:

   IF E < 6 THEN ...

Kombinace těchto dvou příkazů IF funguje podle popisu, protože pokud druhý je spuštěn pouze v případě, že první je true, a < > jsou prováděny pouze v případě, že druhý je true; Proto je kombinací dvou příkazů proveden pouze tehdy, pokud jsou splněny obě. Protože požadované úrovně je v závorkách se dva testy, je celý podmíněné TRUE pouze v případě, že hodnota ERRORLEVEL je přesně tuto hodnotu.


Tato stejná syntaxe lze rozšířit pokrytí sekvenční rozsah z ERRORLEVEL kontrolovat návratové kódy zvýšením rozdíl mezi hodnotami.
Vlastnosti

ID článku: 69576 - Poslední kontrola: 16. 1. 2017 - Revize: 1

Váš názor