DOS 比较,ERRORLEVEL判断

来源:互联网 发布:欧文职业生涯数据 编辑:程序博客网 时间:2024/05/25 23:58

Windows  DOS(或批处理) 对命令执行结果(返回码)的判断,可使用errorlevle值来进行。例如

where jar

 IF %ERRORLEVEL% GTR 0 GOTO end

表示查找jar命令,当没有找到时,则跳转到“end” 子程序继续执行。

where jar

 IF %ERRORLEVEL% GTR 0 ECHO 错误代码:%errorlevel%

表示找不到jar命令时,则打印错误代码。

if %ERRORLEVEL%对数值的比较方法有如下几种:
EQU - 等于
NEQ - 不等于
LSS - 小于
LEQ - 小于或等于
GTR - 大于
GEQ - 大于或等于

附:

where 命令参考:

此命令的语法是:

WHERE [/R dir] [/Q] [/F] [/T] pattern...

描述:
    显示符合搜索模式的文件位置。在默认情况下,搜索是在当前目录和 PATH
    环境变量指定的路径中执行的。

参数列表:
    /R       从指定目录开始,递归性搜索并显示符合指定模式的文件。

    /Q       只返回退出代码,不显示匹配文件列表。(安静模式)

             匹配文件。(安静模式)

    /F       显示所有相配文件并用双引号括上。

    /T       显示所有相配文件的文件的文件。

    pattern  指定要匹配的文件的搜索模式。通配符 * 和 ? 可以用在模式中。
             也可以指定 "$env:pattern" 和 "path:pattern" 格式; 其中
             "env" 是环境变量,搜索是在 "env" 变量的指定的路径中执行的。
             这些格式不应该跟 /R 一起使用。此搜索也可以用将 PATHEXT 变
             量扩展名附加于此模式的方式完成。

     /?      显示此帮助消息。

  注意: 如果搜索成功,此工具返回错误级别 0; 如果不成功,返回 1; 如果失
        败或发生错误,返回 2。


示例:
    WHERE /?
    WHERE myfilename1 myfile????.*
    WHERE $windir:*.*
    WHERE /R c:\windows *.exe *.dll *.bat
    WHERE /Q ??.???
    WHERE "c:\windows;c:\windows\system32:*.dll"
    WHERE /F /T *.dll

0 0
原创粉丝点击