echo 打印errorlevel
时间: 2023-09-05 14:11:03 浏览: 55
在批处理脚本中,可以使用 `%errorlevel%` 来获取上一个执行的命令的返回值,然后使用 `echo` 命令将其输出到命令行界面上。例如:
```
dir C:\Windows\System32 > nul
echo %errorlevel%
```
这个脚本会执行 `dir C:\Windows\System32` 命令,并将输出结果重定向到 `nul` 中,不在命令行界面中显示。然后,使用 `%errorlevel%` 获取该命令的返回值,并使用 `echo` 命令将其输出到命令行界面上。
注意,`%errorlevel%` 必须使用百分号括起来,以表示它是一个环境变量。如果不加括号,命令行界面会将其解释为一个普通的字符串,而不是环境变量。
相关问题
%errorlevel%
`%errorlevel%` 是一个环境变量,用于在批处理程序中获取上一个命令的执行结果或错误代码。
在批处理程序中,每个命令执行后都会返回一个错误代码,用于指示该命令是否成功执行。如果命令执行成功,通常返回值为 0;如果命令执行失败,则返回一个非零的错误代码。
`%errorlevel%` 环境变量用于获取上一个命令的错误代码。你可以在批处理程序中使用条件语句(如 `if`)根据 `%errorlevel%` 的值来执行不同的操作。
以下是一个示例,演示如何使用 `%errorlevel%` 环境变量:
```
@echo off
dir 1>nul 2>nul
if %errorlevel% equ 0 (
echo Directory exists.
) else (
echo Directory does not exist or there was an error.
)
```
在上面的示例中,`dir` 命令用于检查当前目录是否存在。通过重定向输出和错误流到 `nul`,我们可以抑制掉命令的输出,只关注错误代码。然后,使用 `%errorlevel%` 环境变量进行条件判断,如果 `%errorlevel%` 的值为 0,则打印 "Directory exists.",否则打印 "Directory does not exist or there was an error."。
通过使用 `%errorlevel%` 环境变量,你可以根据命令的执行结果来进行相应的处理和控制流程。
用bat判断一个返回值,如果成功就结束,如果失败则继续cmake,循环两次,如果两次后仍失败,则打印失败
你可以使用 `errorlevel` 来判断上一个命令的执行结果。在 Batch 文件中,如果命令执行成功,则 `errorlevel` 的值为 0,否则为非零值。
以下是一个循环两次的示例:
```
@echo off
setlocal
set count=0
:loop
rem 执行命令,例如 cmake
cmake --build .
rem 判断 errorlevel
if %errorlevel% equ 0 (
echo Build successful!
goto end
) else (
set /a count+=1
if %count% lss 2 (
echo Build failed! Retrying...
goto loop
) else (
echo Build failed! Exiting...
)
)
:end
```
在上面的示例中,我们使用 `set /a` 命令来进行数学运算,也就是将 `count` 变量加一。然后,我们使用 `if` 命令来判断 `count` 的值是否小于 2。如果小于 2,则说明还需要继续循环;否则,说明已经循环了两次,打印失败信息并退出。
请注意,上面的示例仅供参考,具体实现可能会根据实际情况而异。