<p>Le « code de sortie » est stocké dans une variable shell nommée <code>errorlevel</code>.</p>
<p>La valeur <code>errorlevel</code> est définie à la fin d’une application console. Les applications Windows se comportent un peu différemment ; voir la <a href="https://stackoverflow.com/a/11476681/1736623">réponse</a> de @<a href="https://stackoverflow.com/users/236365/gary">gary</a> ci-dessous.</p>
<p>Utilisez le mot-clé <code>errorlevel</code> de la commande <code>if</code> pour la comparaison :</p>
<pre><code class="lang-auto">if errorlevel <n> (<statements>)
</code></pre>
<p>Cela exécutera <em>les instructions</em> lorsque le errorlevel est supérieur ou égal à <em>n</em>. Exécutez <code>if /?</code> pour plus de détails.</p>
<p>Une variable shell nommée <code>errorlevel</code> contient la valeur sous forme de chaîne et peut être déréférencée en l’entourant de %.</p>
<p>Script d’exemple :</p>
<pre><code class="lang-auto">my_nifty_exe.exe
rem Give resolution instructions for known exit codes.
rem Ignore exit code 1.
rem Otherwise give a generic error message.
if %errorlevel%==7 (
echo "Replace magnetic tape."
) else if %errorlevel%==3 (
echo "Extinguish the printer."
) else if errorlevel 2 (
echo Unknown Error: %errorlevel% refer to Run Book documentation.
) else (
echo "Success!"
)
</code></pre>
<p>Attention : une variable d’environnement nommée errorlevel, si elle existe, remplacera la variable shell nommée errorlevel. Les tests <code>if errorlevel</code> ne sont pas affectés.</p>