• <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>

            woaidongmao

            文章均收錄自他人博客,但不喜標題前加-[轉(zhuǎn)貼],因其丑陋,見諒!~
            隨筆 - 1469, 文章 - 0, 評論 - 661, 引用 - 0
            數(shù)據(jù)加載中……

            BAT:第六節(jié)(if命令講解)

            最近發(fā)現(xiàn)有些朋友一老問IF命令的用法,IF命令個人覺得很簡單,所以就一直沒把發(fā)放到新手教學貼里說,現(xiàn)在我給補上一文,希望對各位"非常BAT的"新手朋友們有所幫助.
            現(xiàn)在開始:
            在CMD使用IF /?打開IF的系統(tǒng)幫助(自己看我就不全部列出來了),我們會發(fā)現(xiàn)IF有3種基本的用法!
            IF [NOT] ERRORLEVEL number command
            IF [NOT] string1==string2 command
            IF [NOT] EXIST filename command
            首先來講第一種用法 IF [NOT] ERRORLEVEL number command
            這個用法的基本做用是判斷上一條命令執(zhí)行結果的代碼,以決定下一個步驟.
            一般上一條命令的執(zhí)行結果代碼只有兩結果,"成功"用0表示  "失敗"用1表示.
            舉個例子:
            @echo off
            net user
            IF %ERRORLEVEL% == 0 echo net user 執(zhí)行成功了!
            pause
            這是個簡單判斷上條命令是否執(zhí)行成功.
            細心的朋友可能會發(fā)現(xiàn),這個用法和幫助里的用法不太一樣,按照幫助里的寫法"IF %ERRORLEVEL% == 0 echo net user 執(zhí)行成功了!  "這一句代碼因該寫成:IF ERRORLEVEL 0 echo net user 執(zhí)行成功了!
            那為什么我要寫成這樣呢?各位自己把代碼改掉執(zhí)行后,就會發(fā)現(xiàn)錯誤了!用這種語法,不管你的上面的命令是否執(zhí)行成功,他都會認為命令成功了,不知道是BUG還是本人理解錯誤...
            %ERRORLEVEL% 這是個系統(tǒng)變量,返回上條命令的執(zhí)行結果代碼! "成功"用0表示  "失敗"用1表示. 當然還有其他參數(shù),用的時候基本就這兩數(shù)字.
            在舉幾個例子給新手理解
            @echo off
            net usertest
            IF %ERRORLEVEL% == 1 echo net user 執(zhí)行失敗了!
            pause
            這個是判斷上一條命令是否執(zhí)行失敗的
            @echo off
            set /p var=隨便輸入個命令:
            %var%
            if %ERRORLEVEL% == 0 goto yes
            goto no
            :yes
            echo !var! 執(zhí)行成功了
            pause
            exit
            :no
            echo 基本上執(zhí)行失敗了..
            pause
            這個是根據(jù)你輸入的命令,自動判斷是成功還是失敗了!
            在來一個簡化版的
            @echo off
            set /p var=隨便輸入個命令:
            %var%
            if %ERRORLEVEL% == 0 (echo %var%執(zhí)行成功了) ELSE echo %var%執(zhí)行失敗了!
            pause
            else后面寫上執(zhí)行失敗后的操作!
            當然我門還可以把if else這樣的語句分成幾行寫出來,使他看上去好看點...
            @echo off
            set /p var=隨便輸入個命令:
            %var%
            if %ERRORLEVEL% == 0  (
               echo !var! 執(zhí)行成功了
               ) ELSE (
               echo 基本上執(zhí)行失敗了..
               )
            pause
            這里介紹的兩種簡寫對IF的三種語法都可以套用,不單單是在IF [NOT] ERRORLEVEL number command
            這種法上才能用
            現(xiàn)在來說第二種用法IF [NOT] string1==string2 command
            這個呢就是用來比較變量或者字符的值是不是相等的.
            例子
            @echo off
            set /p var=請輸入第一個比較字符:
            set /p var2=請輸入第二個比較字符:
            if %var% == %var2% (echo 我們相等) ELSE echo 我們不相等
            pause
            上面這個例子可以判斷你輸入的值是不是相等,但是你如果輸入相同的字符,但是如果其中一個后面打了一個空格,
            這個例子還是會認為相等,如何讓有空格的輸入不相等呢?我們在比較字符上加個雙引號就可以了.
            @echo off
            set /p var=請輸入第一個比較字符:
            set /p var2=請輸入第二個比較字符(多輸入個空格試試):
            if "%var%" == "%var2%" (echo 我們相等) ELSE echo 我們不相等
            pause
            第三種用法IF [NOT] EXIST filename command
            這個就是判斷某個文件或者文件夾是否存在的語法
            例子
            @echo off
            if exist "c:\test" (echo 存在文件) ELSE echo 不存在文件
            pause
            判斷的文件路徑加引號是為了防止路徑有空格,如果路徑有空格加個雙引號就不會出現(xiàn)判斷出錯了!
            這個語法沒什么太多的用法,基本就這樣了,就不多介紹了.
            另外我們看到每條IF用法后都有個[NOT]語句,這啥意思?其他加上他的話,就表示先判斷我們的條件不成立時,
            沒加他默認是先判斷條件成立時,比如上面這個例子
            @echo off
            if not exist "c:\test" (echo 存在文件) ELSE echo 不存在文件
            pause
            加個NOT,執(zhí)行后有什么結果,如果你的C盤下更本就沒c:\test,他還是會顯示"存在文件",這就表示了加了NOT就
            會先判斷條件失敗!懂了吧,上面例子改成這樣就正確了!
            @echo off
            if not exist "c:\test" (echo 不存在文件) ELSE echo 存在文件
            pause
            另外IF還有一些增強的用法,如下
              IF [/I] string1 compare-op string2 command
              IF CMDEXTVERSION number command
              IF DEFINED variable command
            后面兩個用法,我不做介紹,因為他們和上面的用法表示的意義基本一樣,只簡單說說  IF [/I] string1 compare-op string2 command這個語句在判斷字符時不區(qū)分字符的大小寫,看這兩個例子
            @echo off
            if a == A (echo 我們相等) ELSE echo 我們不相等
            pause
            執(zhí)行后會顯示我們不相等
            @echo off
            if /i a == A (echo 我們相等) ELSE echo 我們不相等
            pause
            加上/I不區(qū)分大小寫就相等了!
            最后面還有一些用來判斷數(shù)字的符號
            EQU - 等于
            NEQ - 不等于
            LSS - 小于
            LEQ - 小于或等于
            GTR - 大于
            GEQ - 大于或等于
            我?guī)着e一個例子,大家都懂數(shù)學...不講多了
            @echo off
            set /p var=請輸入一個數(shù)字:
            if %var% LEQ  4 (echo 我小于等于4) ELSE echo 我不小于等于4
            pause

            posted on 2008-04-23 11:22 肥仔 閱讀(811) 評論(0)  編輯 收藏 引用 所屬分類: Windows開發(fā)

            色综合久久夜色精品国产| 久久人人爽人人精品视频| 亚洲国产成人乱码精品女人久久久不卡| 久久亚洲日韩看片无码| 久久午夜综合久久| 久久免费观看视频| 亚洲精品国产自在久久| 亚洲色欲久久久久综合网| 伊人久久综合精品无码AV专区| 亚洲AV无码久久| 国产精品久久久久久久久软件| 久久精品国产日本波多野结衣| 无码国内精品久久人妻| 国产69精品久久久久9999| 久久国产精品免费| 性做久久久久久免费观看| 少妇精品久久久一区二区三区| 久久综合九色综合精品| 欧美精品九九99久久在观看| 中文国产成人精品久久不卡| 精品999久久久久久中文字幕 | 久久亚洲精品无码播放| 香蕉久久久久久狠狠色| 狠狠88综合久久久久综合网| 99久久国产亚洲高清观看2024| 色婷婷噜噜久久国产精品12p | 国产精品久久久久AV福利动漫| 久久婷婷久久一区二区三区| 久久精品国产亚洲av麻豆图片| 亚洲国产精品久久| 综合久久一区二区三区 | 久久99精品国产自在现线小黄鸭 | 久久久久免费看成人影片| 99精品国产在热久久| 久久久久久伊人高潮影院| 中文字幕一区二区三区久久网站| 久久AV高潮AV无码AV| 久久久WWW成人| 久久精品无码一区二区无码| 亚洲国产精品嫩草影院久久| 国产精品热久久无码av|