我有一个批处理文件可以做几件事.如果其中一个失败,我想退出整个程序.例如:
@echo off
type foo.txt 2>> error.txt >> success.txt
mkdir bob
Run Code Online (Sandbox Code Playgroud)
如果找不到文件foo.txt,那么我希望将stderr消息附加到error.txt文件中,否则foo.txt的内容将附加到success.txt.基本上,如果type命令返回stderr,那么我希望批处理文件退出而不创建新目录.如何判断是否发生错误并决定是否需要继续执行下一个命令?
aki*_*ira 10
用于ERRORLEVEL检查上一个命令的退出代码:
if ERRORLEVEL 1 exit /b
Run Code Online (Sandbox Code Playgroud)
编辑:文档说"条件为真,如果最后一个命令的退出代码是等于或大于X"(你可以检查if /?).除此之外,您还可以检查文件是否存在
if exist foo.txt echo yada yada
Run Code Online (Sandbox Code Playgroud)
如果条件为真,则执行multple命令:
if ERRORLEVEL 1 ( echo error in previous command & exit /b )
Run Code Online (Sandbox Code Playgroud)
要么
if ERRORLEVEL 1 (
echo error in previous command
exit /b
)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
13316 次 |
| 最近记录: |