• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            兔子的技術博客

            兔子

               :: 首頁 :: 聯系 :: 聚合  :: 管理
              202 Posts :: 0 Stories :: 43 Comments :: 0 Trackbacks

            留言簿(10)

            最新評論

            閱讀排行榜

            評論排行榜

            批處理比較數值大小 lss,equ和gtr的用法

            ★電腦綜合★ 2010-04-17 14:18:39 閱讀196 評論0    字號: 訂閱

                 EQU - 等于
            NEQ - 不等于
            LSS - 小于
            LEQ - 小于或等于
            GTR - 大于
            GEQ - 大于或等于

            比較大小.bat的源程序如下:

            @echo off
            set /p 第一個數=請輸入第一個數- c% F. C2 k: ~# R
            set /p 第二個數=請輸入第二個數
            if %第二個數% lss %第一個數% goto hero7 |! U; ~8 ?5 ?7 p9 g6 v. Y3 w" K0 v
            if %第二個數% equ %第一個數% goto her
            if %第二個數% gtr %第一個數% goto he9 @! i8 q& c; j; Z/ Q% ]
            pause2 W) H7 w/ R$ @   g8 P
            exit
            :hero& b8 K1 _5 C' U0 A/ l% D
            echo 第一個數比第二個數大!
            pause# A6 \8 X9 P) t- B9 Z- g2 e1 a
            %0
            :her' t) K1 j. h# L
            echo 第一個數等于第二個數!
            pause
            %0
            :he- o$ e* U# ]" }4 |! V% ^" c
            echo 第一個數比第二個數小!
            pause
            %07 \! s- e$ [0 E6 @
            : T+ d6 Y# o0 [" H4 P% C

            比較大小另 版.bat 的源程序如下:
            5 B. b6 H8 i/ D* L
            @echo off; R% @1 ~% g' W
            set /p 第一個數=請輸入第一個數
            set /p 第二個數=請輸入第二個數
            if %第二個數% lss %第一個數% goto hero
            if %第二個數% equ %第一個數% goto her' N( d7 j   i$ r8 e" A
            if %第二個數% gtr %第一個數% goto he" h2 ~4 P2 m' V
            :hero0 h( k, ?) \( C" t, \
            echo 第一個數比第二個數大!5 a4 i$ L7 p% M; e% ]! T
            pause
            goto end
            :her& ~2 r' Q7 X! g: j0 I& x
            echo 第一個數等于第二個數!
            pause$ k4 |( v4 B: _$ `" ~
            goto end
            :he   ^3 U/ K* S" W- D7 o: t
            echo 第一個數比第二個數小!
            pause
            goto end
            :end. t; R( v+ H# l4 C0 l( f( _. q# i
            exit





            命令行下如何用批處理比較數據大小?


            set var1=3
            set var2=2
            if %var1% GTR %var2% goto ...

            if /?:
            執行批處理程序中的條件處理。
            IF [NOT] ERRORLEVEL number command
            IF [NOT] string1==string2 command
            IF [NOT] EXIST filename command
            NOT             指定只有條件為 false 的情況下,Windows 才
            應該執行該命令。
            ERRORLEVEL number 如果最后運行的程序返回一個等于或大于
            指定數字的退出編碼,指定條件為 true。
            string1==string2   如果指定的文字字符串匹配,指定條件為 true。
            EXIST filename 如果指定的文件名存在,指定條件為 true。
            command           如果符合條件,指定要執行的命令。如果指定的
            條件為 FALSE,命令后可跟一個執行 ELSE 
            關鍵字后的命令的 ELSE 命令。
            ELSE 子句必須在 IF 之后出現在同一行上。例如:
            IF EXIST filename. (
            del filename.
            ) ELSE (
            echo filename. missing.
            )
            因為 del 命令需要用一個新行終止,以下子句不會有效:
            IF EXIST filename. del filename. ELSE echo filename. missing
            由于 ELSE 命令必須與 IF 命令的尾端在同一行上,以下子句也
            不會有效:
            IF EXIST filename. del filename.
            ELSE echo filename. missing
            如果都放在同一行上,以下子句有效:
            IF EXIST filename. (del filename.) ELSE echo filename. missing
            如果命令擴展被啟用,IF 會如下改變:
            IF [/I] string1 compare-op string2 command
            IF CMDEXTVERSION number command
            IF DEFINED variable command
            其中, compare-op 可以是:
            EQU - 等于
            NEQ - 不等于
            LSS - 小于
            LEQ - 小于或等于
            GTR - 大于
            GEQ - 大于或等于
            而 /I 開關(如果指定)說明要進行的字符串比較不分大小寫。
            /I 開關可以用于 IF 的 string1==string2 的形式上。這些
            比較都是通用的;原因是,如果 string1 和 string2 都是
            由數字組成的,字符串會被轉換成數字,進行數字比較。
            CMDEXTVERSION 條件的作用跟 ERRORLEVEL 的一樣,除了它
            是在跟與命令擴展有關聯的內部版本號比較。第一個版本
            是 1。每次對命令擴展有相當大的增強時,版本號會增加一個。
            命令擴展被停用時,CMDEXTVERSION 條件不是真的。
            如果已定義環境變量,DEFINED 條件的作用跟 EXISTS 的一樣,
            除了它取得一個環境變量,返回的結果是 true。
            如果沒有名為 ERRORLEVEL 的環境變量,%ERRORLEVEL%
            會擴充為 ERROLEVEL 當前數值的字符串表達式;否則,您會得到
            其數值。運行程序后,以下語句說明 ERRORLEVEL 的用法:
            goto answer%ERRORLEVEL%
            :answer0
            echo Program had return code 0
            :answer1
            echo Program had return code 1
            您也可以使用以上的數字比較:
            IF %ERRORLEVEL% LEQ 1 goto okay
            如果沒有名為 CMDCMDLINE 的環境變量,%CMDCMDLINE%
            將在 CMD.EXE 進行任何處理前擴充為傳遞給 CMD.EXE 的原始
            命令行;否則,您會得到其數值。
            如果沒有名為 CMDEXTVERSION 的環境變量,
            %CMDEXTVERSION% 會擴充為 CMDEXTVERSION 當前數值的
            字串符表達式;否則,您會得到其數值。

            IF (DOS命令)

              執行批處理程序中的條件處理。

              IF [NOT] ERRORLEVEL number command

              IF [NOT] string1==string2 command

              IF [NOT] EXIST filename command

              NOT 指定只有條件為 false 的情況下, Windows XP 才

              應該執行該命令。

              ERRORLEVEL number 如果最后運行的程序返回一個等于或大于

              指定數字的退出編碼,指定條件為 true。

              string1==string2 如果指定的文字字符串匹配,指定條件為 true。

              EXIST filename 如果指定的文件名存在,指定條件為 true。

              command 如果符合條件,指定要執行的命令。如果指定的

              條件為 FALSE,命令后可跟一個執行 ELSE

              關鍵字后的命令的 ELSE 命令。

              ELSE 子句必須在 IF 之后出現在同一行上。例如:

              IF EXIST filename. (

              del filename.

              ) ELSE (

              echo filename. missing.

              )

              因為 del 命令需要用一個新行終止,以下子句不會有效:

              IF EXIST filename. del filename. ELSE echo filename. missing

              由于 ELSE 命令必須與 IF 命令的尾端在同一行上,以下子句也

              不會有效:

              IF EXIST filename. del filename.

              ELSE echo filename. missing

              如果都放在同一行上,以下子句有效:

              IF EXIST filename. (del filename.) ELSE echo filename. missing

              如果命令擴展名被啟用,IF 會如下改變:

              IF string1 compare-op string2 command

              IF CMDEXTVERSION number command

              IF DEFINED variable command

              其中,比較運算符可以是:

              EQU - 等于

              NEQ - 不等于

              LSS - 小于

              LEQ - 小于或等于

              GTR - 大于

              GEQ - 大于或等于

              及 /I 開關;如果該開關被指定,則說明要進行的字符串比較不分

              大小寫。/I 開關可以用于 IF 的 string1==string2 的形式上。這些

              比較都是通用的;原因是,如果 string1 和 string2 都是由數字

              組成的,字符串會被轉換成數字,進行數字比較。

              CMDEXTVERSION 條件的作用跟 ERRORLEVEL 的一樣,除了它

              是在跟與命令擴展名有關聯的內部版本號比較。第一個版本

              是 1。每次對命令擴展名有相當大的增強時,版本號會增加一個。

              命令擴展名被停用時,CMDEXTVERSION 條件不是真的。

              如果已定義環境變量,DEFINED 條件的作用跟 EXISTS 的一樣,

              除了它取得一個環境變量,返回的結果是 true。

              如果沒有名為 ERRORLEVEL 的環境變量,%ERRORLEVEL%

              會擴充為 ERROLEVEL 當前數值的字符串表達式;否則,您會得到

              其數值。運行程序后,以下語句說明 ERRORLEVEL 的用法:

              goto answer%ERRORLEVEL%

              :answer0

              echo Program had return code 0

              :answer1

              echo Program had return code 1

              您也可以使用以上的數字比較:

              IF %ERRORLEVEL% LEQ 1 goto okay

              如果沒有名為 CMDCMDLINE 的環境變量,%CMDCMDLINE%

              將在 CMD.EXE 進行任何處理前擴充為傳遞給 CMD.EXE 的原始

              命令行;否則,您會得到其數值。

              如果沒有名為 CMDEXTVERSION 的環境變量,

              %CMDEXTVERSION% 會擴充為 CMDEXTVERSION 當前數值的

              字串符表達式;否則,您會得到其數值。

            if中gtr的特殊應用(時間&字母對比命令)

            2009年05月06日 星期三 16:49
            if中gtr的特殊應用作者:youxi01
            轉載請注明

            一、直接對日期大小進行比較。
            比如,我要查找當前目錄下,在2005-5-30以后的文件,則可以這樣寫:
            復制內容到剪貼板 代碼:

            @echo off
            for %%i in (*) do if %%~ti gtr 2005-05-30 echo %%~nxi
            pause>nul

            二、對字母直接進行比較。
            復制內容到剪貼板 代碼:

            @echo off
            call :echo c o
            echo.
            call :echo d k
            pause>nul
            :echo startw endw
            echo %1 到 %2 之間的字母有:
            for %%i in (a b c d e f g h i j k l m n o p q r s t u v w x y z) do (
            if %%i geq %1 if %%i leq %2 set /p=%%i <nul)

            三、更奇妙的是,漢字和英文字也可以比較“大小”---找出字符串中的漢字
            測試代碼: 復制內容到剪貼板 代碼:@echo off
            setlocal enabledelayedexpansion
            set "str=我bat是home好.cn人"
            call :test "%str%"
            echo 提取出的漢字有:%cstr%
            pause>nul
            :test
            set "var=%~1"
            for /l %%i in (0 1 20) do (
            set "var_=!var:~%%i,1!"
            if "!var_!"=="" goto :eof
            if !var_! gtr Z set cstr=!cstr!!var_!


            轉自:http://blog.chinaunix.net/uid-78707-id-3473907.html
            posted on 2013-10-16 19:46 會飛的兔子 閱讀(2982) 評論(0)  編輯 收藏 引用 所屬分類: 系統API,底層技術軟件使用和系統維護
            久久中文字幕人妻熟av女| 欧美久久一级内射wwwwww.| 91精品国产综合久久精品| 久久66热人妻偷产精品9| 99久久精品久久久久久清纯| 国产—久久香蕉国产线看观看| 精品久久无码中文字幕| 久久久无码一区二区三区| 99热热久久这里只有精品68| 亚洲精品无码久久久久AV麻豆| 综合网日日天干夜夜久久| 久久综合久久久| 中文字幕无码久久精品青草| 久久超碰97人人做人人爱| 久久人妻少妇嫩草AV蜜桃| 国产高潮久久免费观看| 国产综合久久久久久鬼色| 久久精品国产亚洲7777| 国产精品一久久香蕉国产线看观看 | 久久综合伊人77777麻豆| 久久亚洲精品无码AV红樱桃| 99久久精品久久久久久清纯| 无码国内精品久久人妻| 三级韩国一区久久二区综合 | 久久久久国产| 久久Av无码精品人妻系列| 一级做a爰片久久毛片看看| 国产一区二区三区久久精品| 日本欧美久久久久免费播放网| 亚洲午夜无码AV毛片久久| 精品久久久久久综合日本| 久久夜色精品国产网站| 亚洲精品无码久久一线| 漂亮人妻被中出中文字幕久久 | 国产99久久久久久免费看| 久久国产乱子伦免费精品| 亚洲综合伊人久久综合| 久久久久人妻一区精品色| 久久精品国产第一区二区三区| 无码人妻精品一区二区三区久久 | 久久精品无码一区二区无码|