【書き方1】
if %errorlevel% equ 1 ; 1に等しい場合
【書き方2】
if errorlevel 1 ; 1以上の場合。
if not errorlevel 1 ; 1未満の場合
比較演算子が入る書き方1は「errorlevel」をユーザ変数と同じように扱います。
書き方2はいっそのこと「if errorlevel」構文だと思った方が分かりやすいですかね。
書き方2の何が便利かというと、
errorlevel判定のネストが必要な場合でも
setlocal enabledelayedexpansion指定しなくてもよいということでしょう。
(遅延展開は値に「!」が含まれてると誤動作するので避けたい)
【書き方1の場合】
{処理1(成功なら0、失敗は1以上の数値を返すとする)}
if %errorlevel% equ 0 (
{処理2(成功なら0、失敗は1以上の数値を返すとする)}
if !errorlevel! equ 0 (
{処理3}
)
)
【書き方2の場合】
{処理1(成功なら0、失敗は1以上の数値を返すとする)}
if not errorlevel 1 (
{処理2(成功なら0、失敗は1以上の数値を返すとする)}
if not errorlevel 1 (
{処理3}
)
)