中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

bat批處理中if命令怎么用

發布時間:2021-09-30 11:15:40 來源:億速云 閱讀:267 作者:小新 欄目:開發技術

小編給大家分享一下bat批處理中if命令怎么用,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

if 命令示例詳解

if,正如它E文中的意思,就是“如果”的意思,用來進行條件判斷。翻譯過來的意思就是:如果符合某一條件,便執行后面的命令。
主要用來判斷,1、兩個“字符串”是否相等;2、兩個數值是大于、小于、等于,然后執行相應的命令。
當然還有特殊用法,如結合errorlevel:if errorlevel 1 echo error
或者結合defined(定義的意思):if defined test (echo It is defined) else echo It isn't defined

用法示例:
1、檢測字符串(注意,用if檢測字符串是否相等的時候,后面用的不是“=”,而是“==”):

代碼如下:


@echo off
set "str=this is a test"
REM 檢測變量%str%是否等于test,如果相等,顯示OK,否則顯示NO
if "%str%"=="test" (echo OK) else echo NO
pause>nul


2、檢測數值:(注意,批處理中大于符號不能用:“>”,而用"gtr",其它的也類似)
比較運算符一覽:
EQU - 等于
NEQ - 不等于
LSS - 小于
LEQ - 小于或等于
GTR - 大于
GEQ - 大于或等于
檢測數值 20 是否大于 15演示代碼:

代碼如下:


@echo off
set /a num1=20
set /a num2=15
if %num1% gtr %num2% echo %num1%大于%num2%
if %num1% EQU %num2% echo %num1%等于%num2%
if %num1% LSS %num2% echo %num1%小于%num2%
pause>nul


3、if結合errorlevel使用:
說明:環境變量errorlevel的初始值為0,當一些命令執行不成功,就會返回一個數值,如:1 ,2 等
IF-ERRORLEVEL 
測試代碼:

代碼如下:


@ECHO OFF 
XCOPY F:\test.bat D:\ 
IF ERRORLEVEL 1 ECHO 文件拷貝失敗 
IF ERRORLEVEL 0 ECHO 成功拷貝文件 


如果文件拷貝成功,屏幕就會顯示“成功拷貝文件”,否則就會顯示“文件拷貝失敗”。 
IF ERRORLEVEL 是用來測試它的上一個DOS命令的返回值的,注意只是上一個命令的返回值,而且返回值必須依照從大到小次序順序判斷。 
因此下面的批處理文件是錯誤的: 
@ECHO OFF 
XCOPY C:\AUTOEXEC.BAT D:\ 
IF ERRORLEVEL 0 ECHO 成功拷貝文件 
IF ERRORLEVEL 1 ECHO 未找到拷貝文件 
IF ERRORLEVEL 2 ECHO 用戶通過ctrl-c中止拷貝操作 
IF ERRORLEVEL 3 ECHO 預置錯誤阻止文件拷貝操作 
IF ERRORLEVEL 4 ECHO 拷貝過程中寫盤錯誤 
無論拷貝是否成功,后面的: 
未找到拷貝文件 
用戶通過ctrl-c中止拷貝操作 
預置錯誤阻止文件拷貝操作 
拷貝過程中寫盤錯誤 
都將顯示出來。

代碼如下:


附錄:
以下就是幾個常用命令的返回值及其代表的意義: 
backup 
0 備份成功 
1 未找到備份文件 
2 文件共享沖突阻止備份完成 
3 用戶用ctrl-c中止備份 
4 由于致命的錯誤使備份操作中止 
diskcomp 
0 盤比較相同 
1 盤比較不同 
2 用戶通過ctrl-c中止比較操作 
3 由于致命的錯誤使比較操作中止 
4 預置錯誤中止比較 
diskcopy 
0 盤拷貝操作成功 
1 非致命盤讀/寫錯 
2 用戶通過ctrl-c結束拷貝操作 
3 因致命的處理錯誤使盤拷貝中止 
4 預置錯誤阻止拷貝操作 
format 
0 格式化成功 
3 用戶通過ctrl-c中止格式化處理 
4 因致命的處理錯誤使格式化中止 
5 在提示“proceed with format(y/n)?”下用戶鍵入n結束 
xcopy 
0 成功拷貝文件 
1 未找到拷貝文件 
2 用戶通過ctrl-c中止拷貝操作 
4 預置錯誤阻止文件拷貝操作 
5 拷貝過程中寫盤錯誤 


4、if還有一個特殊的用法就是可以用來檢測某個變量是否已經被定義
用法示例:

代碼如下:


@echo off
set "str1=ok"
set "str2=no"
if defined str1 echo str1已經被定義
if defined str2 echo str2已經被定義
if defined str3 (echo str3已經被定義) else echo str3 沒有被定義
pause>nul

以上是“bat批處理中if命令怎么用”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

成都市| 浦东新区| 郸城县| 清新县| 乐亭县| 桑植县| 高尔夫| 富川| 多伦县| 满洲里市| 尉犁县| 澄江县| 萨嘎县| 兴安县| 哈尔滨市| 凉城县| 青海省| 安化县| 梅河口市| 安图县| 前郭尔| 桓台县| 南开区| 九江市| 建水县| 宁河县| 昌乐县| 奇台县| 阳城县| 达拉特旗| 宁都县| 仙桃市| 惠州市| 略阳县| 杭锦后旗| 密山市| 湘潭市| 肥东县| 山东省| 长子县| 巧家县|