08 CMD if命令講解

2021-06-16 13:20:02 字數 3786 閱讀 7695

if 命令講解

if命令有三種用法:

1, if [not] errorlevel number commond

2, if [not] string1==string2 commond

3, if [not] exist filename commond

說明:not     

條件為 false時, 才執行

errorlevel number

如果最後執行的程式返回乙個等於或大於指定數字的退出編碼,指定條件為 true 

string1==string2   

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

exist filename     

如果指定的檔名存在,指定條件為 true 。

command           

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

else子句

必須在 if之後,且處於同一行(即同乙個語句).

if exist filename (

del filename

) else (

echo filename missing

)一, if [not] errorlevel number command 

作用:即, %errorlevel% >= number, 則執行commond

一般上一條命令的執行結果**只有兩結果,"成功"用0 表示,"失敗"用1 表示. 

0 <= errorlevel <= 255

舉例:(1)

d:\cmd\05>net user

d:\cmd\05>echo %errorlevel%

0d:\cmd\05>net user1

d:\cmd\05>echo %errorlevel%

1(2) xcopy

xcopy退出碼說明:

0  檔案複製沒有錯誤。 

1  if errorlevel 2 echo。 

2  使用者按  ctrl+c  終止了 xcopy 。 

4  出現了初始化錯誤。沒有足夠的記憶體或磁碟空間,或命令列上輸入了無效的驅動器名稱或語法。 

5  出現了磁碟寫入錯誤。

要判斷上面 xcopy 命令的5 種退出情況,應寫成: 

if errorlevel 5 echo 出現了磁碟寫入錯誤 

if errorlevel 4 echo 出現了初始化錯誤 

if errorlevel 2 echo 使用者按 ctrl+c  終止了 xcopy 

if errorlevel 1 echo if errorlevel 2 echo 

if errorlevel 0 echo 檔案複製沒有錯誤。 

才能正確執行。

(3) 1.bat => 互動式輸入命令,判斷是否執行成功

@echo off

set /p var=請輸入命令及其引數:

%var%

if %errorlevel%==0 (

goto success

) else (

goto error

):success

echo %var%  執行成功..

pause

goto :eof

:error

echo %var%  執行失敗!!

pause

goto :eof

二, if [not] string1==string2 commond

作用:比較字變數或者符串的值是不是相等的.

舉例:(1) 2.bat => 輸入兩個字串,比較是否相等

@echo off

set /p var1=請輸入第乙個字串:

set /p var2=請輸入第二個字串:

if %var1%==%var2% (

echo 相等````````    

) else (

echo 不相等!!!!!!!

pause    

(2) 3.bat => 字串定界符(雙引號),防止誤輸入空格

d:\cmd\05>type 3.bat

@echo off

set /p var1=請輸入第乙個字串:

set /p var2=請輸入第二個字串:

if "%var1%"=="%var2%" (

echo 相等.......

) else (

echo no!!!!!!!!!

)pause

d:\cmd\05>3

請輸入第乙個字串:123

請輸入第二個字串:456

no!!!!!!!!!

三, if [not] exist filename command     

作用:判斷某個檔案或者資料夾是否存在的語法 

注意:路徑如果有空格, 需要使用雙引號

舉例:d:\cmd\05>if exist "d:\cmd\05\3.bat" @echo file is exist!

file is exist!

四, if增強的用法

格式:if string1 compare-op string2 command  # 引數 /i 表示不區分大小寫 

if cmdextversion number command 

if defined variable command  # 判斷變數是否存在,很有用

說明:(1) compare-op

equ -  等於 

neq -  不等於 

lss -  小於 

leq -  小於或等於 

gtr -  大於 

geq -  大於或等於  

(2) cmdextversion

cmdextversion 條件的作用跟 errorlevel  的一樣,

除了它是在跟與命令副檔名有關聯的內部版本號比較。

第乙個版本是 1 。每次對命令副檔名有相當大的增強時,版本號會增加乙個。 

命令副檔名被停用時,cmdextversion 條件不是真的。

(3) defined

defined  條件的作用跟 exists 的一樣 

如果 variable 定義了, 且不是 "set variable=", 則為真

"set variable=" 使變數variable變成未定義.

請注意 variable 為不使用引導符號%的變數名

舉例:(1) 

d:\cmd\05>set var=123

d:\cmd\05>if defined var (@echo var is exist) else (@echo var is not exist!)

var is exist

d:\cmd\05>set var=

d:\cmd\05>if defined var (@echo var is exist) else (@echo var is not exist!)

var is not exist!

(2)    

d:\cmd\05>set /p var=please input a number:

please input a number:5

d:\cmd\05>if %var% gtr 4 (@echo yes) else (@echo no)

yesd:\cmd\05>set /p var=please input a number:

please input a number:1

d:\cmd\05>if %var% gtr 4 (@echo yes) else (@echo no)

no

08Python學習函式講解

定義 函式是指將一組語句的集合通過乙個名字 函式名 封裝起來,要想執行這個函式,只需呼叫其函式名即可 特性 減少重複 使程式變的可擴充套件 使程式變得易維護 deffuncname v 定義函式名,形參.print v funcname hello 呼叫函式 hello正常情況下,給函式傳引數要按順...

DOS命令講解

常用的命令 cd 改變當前目錄 cls 清屏 copy 拷貝檔案 del 刪除檔案 deltree 刪除目錄樹 dir 列檔名 diskcopy 複製磁碟 edit 文字編輯 format 格式化磁碟 md 建立子目錄 mem 檢視記憶體狀況 more 分屏顯示 move 移動檔案 改目錄名 rd ...

LINUX vmstat命令講解

vmstat命令是最常見的linux unix監控工具,可以展現給定時間間隔的伺服器的狀態值,包括伺服器的cpu使用率,記憶體使用,虛擬記憶體交換情況,io讀寫情況。一般vmstat工具的使用是通過兩個數字引數來完成的,第乙個引數是取樣的時間間隔數,單位是秒,第二個引數是取樣的次數,如 vmstat...