zoukankan      html  css  js  c++  java
  • 批处理程序判断命令返回结果 Virus

    Technorati 标签: 批处理,bat,返回结果,0,1

    有时候我们会写一些批处理命令来辅助我们的工作,在批处理中要根据命令的返回值做一些判断,有分支的存在,这时候可以使用系统变量%errorlevel%,范例如下:

     

    @echo on
    dir c:\
    echo "返回0说明运行成功,返回1说明运行失败"
    set "err=%errorlevel%"
      if "%err%"=="0" (

    echo "sucess"

    echo “你成功了”

    ) else(

    echo "fail"

    echo “你失败啊”

    )

    pause

     

    说明如下:

    @echo off
    dir z:
    IF ERRORLEVEL 1 goto 1
    IF ERRORLEVEL 0 goto 0
    goto C
    :0
    echo 命令执行成功!
    goto C
    :1
    echo 命令执行失败!
    goto C
    :C
    echo 判断ERRORLEVEL返回号应该由高到低
    PAUSE
    或者
    @echo off
    dir c:
    set "err=%ERRORLEVEL%"
    IF "%err%"=="0" goto 0
    IF "%err%"=="1" goto 1
    goto C
    :0
    echo 命令执行成功!
    goto C
    :1
    echo 命令执行失败!
    goto C
    :C
    echo 将ERRORLEVEL返回号定义到一个变量由if判断
    PAUSE
    补充回答:返回值是多少在程序执行完后用echo %ERRORLEVEL%来查看该值, 每个命令基本返回值0或1(0成功1失败)特别是内部命令,不能一概的说是系统规定的,而是命令所指定的,第三方命令(外部命令)会提供多个甚至几十个返回值但最多 256±1 个返回值,各命令的返回值含义可能各不相同,其返回值含义及用法在此程序开发者原始自述文中有说明。
    举例:
    xcopy test.txt y:
    if errorlevel 5 echo 出现了磁盘写入错误
    if errorlevel 4 echo 出现了初始化错误
    if errorlevel 2 echo 用户按CTRL+C终止
    if errorlevel 1 echo 文件复制失败
    if errorlevel 0 echo 文件复制成功
    xxxx.exe 2>nul
    if %errorlevel%==9009 xxxx.exe命令无效

    【Blog】http://virusswb.cnblogs.com/

    【MSN】jorden008@hotmail.com

    【说明】转载请标明出处,谢谢

    反馈文章质量,你可以通过快速通道评论:

  • 相关阅读:
    Windows_10 系统封装
    leetcode-75 颜色分类
    leetcode-922 按奇偶排序数组 II
    leetcode-905 按奇偶数排序
    UVA-10827 环面上的最大子矩阵和
    leetcode918 环形最大子数组
    leetcode-85 最大矩形
    leetcode-84 柱状图中的最大矩形
    leetcode-221 最大正方形
    leetcode-713 乘积小于k的数组
  • 原文地址:https://www.cnblogs.com/virusswb/p/1634828.html
Copyright © 2011-2022 走看看