我想写一个窗口脚本,如果一个命令没有被识别为内部或外部命令,就退出脚本。
请问如何实现?真的需要一些帮助,因为window cmd文档和例子都很有限。
我曾试过用.NET技术来实现。
somecommand
if errorlevel 0 exit /b
但似乎没有用,因为错误级别的值一直是0,甚至我得到了 "command is not recognized as internal or external command "的错误信息。
先谢谢你
衷心祝愿
写一个短的批处理文件(一个简单的文本文件),用
@echo off
%* 2>nul || echo No such command: %*
该 ||
操作符开始下一条命令(这里是 echo
只有在前一个命令失败的情况下才会出现)。
该 if errorlevel n
将被评价为 真正 对于任何大于或等于 n
. 所以... if errorlevel 0
对于任何非负值的错误级别都将为真。
当一个命令未被识别时, errorlevel
值集是 9009
所以,你可以尝试用
somecommand
if %errorlevel% equ 9009 echo does not exist
somecommand
if not errorlevel 9010 if errorlevel 9009 echo does not exist
当然,任何现有的程序都可以设置一个新的程序。errorlevel
的 9009
,所以这不是一个防弹方法。
@echo off
ver > nul
echo ERRORLEVEL : %ERRORLEVEL%
some command
IF %ERRORLEVEL% NEQ 0 ( goto PrintError )
:PrintError
echo Command is not recognized as internal or external command!
exit /B 1