Wenn ein externes Kommando (d.h. ein Programm) einen Exit-Code hat , wird dessen Wert in der Variablen ? gespeichert, wenn das Programm beendet wird. Außerdem  setzen  einige interne Befehle, z. B. DIR - um Microsofts CMD zu emulieren  - diese Variable auf denselben Wert wie die Variable _?.

 

Um sicherzustellen, dass Sie den Exit-Code des  zu prüfenden externen Kommandos und nicht den eines nachfolgenden internen oder externen Kommandos verwenden , ist es am besten, den Wert von ? sofort nach Beendigung des betreffenden externen Kommandos in einer anderen Variablen  zu speichern  und stattdessen diese Variable zu verwenden. Wir empfehlen auch dringend, bei internen Kommandos  stattdessen die Variable _? abzufragen .

 

Nicht alle Programme geben einen Exit-Code zurück. Wenn ein Programm nicht explizit einen Exit-Code zurückgibt,  istder Wert von %? undefiniert.

 

Alternativer Name: ERRORLEVEL.

 

Siehe auch: _?