命令
IF %ERRORLEVEL% NEQ 0 (
ECHO 命令执行失败
) ELSE (
ECHO 命令执行成功
)
或者简写:
命令 && ECHO 成功 || ECHO 失败
dir C:\
IF %ERRORLEVEL% EQU 0 (
ECHO dir命令执行成功
) ELSE (
ECHO dir命令执行失败,错误码:%ERRORLEVEL%
)
ping 127.0.0.1 -n 1 && (
ECHO Ping成功
) || (
ECHO Ping失败
)
命令1 && 命令2 && ECHO 所有命令都成功 || ECHO 某个命令失败
命令 || (
ECHO 执行失败,正在执行清理操作...
REM 清理代码
)
命令
SET EXIT_CODE=%ERRORLEVEL%
IF %EXIT_CODE% NEQ 0 (
ECHO 错误代码:%EXIT_CODE%
)
0:成功1:一般错误@echo off
REM 示例:检查文件是否存在
IF EXIST "C:\test.txt" (
ECHO 文件存在
) ELSE (
ECHO 文件不存在
EXIT /B 1
)
REM 检查上一条命令是否成功
IF %ERRORLEVEL% NEQ 0 (
ECHO 之前的操作失败
EXIT /B %ERRORLEVEL%
)
REM 使用&&||的完整流程
copy source.txt dest.txt && (
ECHO 复制成功
REM 成功后的操作
) || (
ECHO 复制失败
REM 失败后的操作
EXIT /B 1
)
ECHO 脚本执行完毕
EXIT /B <code> 返回明确的退出码
在脚本开头添加 @echo off 减少输出
使用注释说明重要的错误检查
FOR %%F IN (*.txt) DO (
echo 处理文件:%%F
some_command %%F
IF ERRORLEVEL 1 (
ECHO 处理 %%F 时出错
)
)
最简单的判断方法就是使用 && 和 || 操作符,或者检查 %ERRORLEVEL% 变量。