IF
用法:
if [not] errorlevel number commend
if [not] string1==string2 commend
if [not] exist filename commend
*如果在if後方加上not 則只有在if條件不成立時會執行動作
errorlevel 只是個錯誤回傳值 在實際應用比較用不到
if string1==string2 command 這只限用於"字串比對"
不能用作其他用途
這時我們用compare-op
compare-op可以是:
EQU -等於
NEQ -不等於
LSS -小於
LEQ -小於等於
GTR -大於
GEQ -大於等於
EX:
@echo off
set a=輸入一個數字:
if %a% GTR 5 echo 此數大於五
pause
如果沒有小於五呢??????? 那就用else
else //除了if之外都的要執行什麼動作
修改後.....
if %a% GTR 5 (echo 此數大於五) else (此數小於五)
如果不是數字或是小於五呢?????
這就要用到goto了
這在下一篇在討論
*轉載須附上文章出處http://nobrain-place.blogspot.com/2009/04/3.html
動手做批次檔2
set
SET 顯示,設定或移除環境變數
用法:
set [variable=[string]
variable 指定環境變數名稱
指定設定給變數的一系列字元
這樣看或許很抽象
實地的示範一次就知道
@echo off
set a=hello //將a設為hello
echo %a% //解讀a的內容
pause
這時螢幕就會顯示hello 夠簡單吧!
用set來顯示環境變數
在CMD指令下輸入set p
就會顯示所有"P"開頭的環境變數
輸入set a
就會顯示所有"A"開頭的環境變數
以此類推
如果在目前的環境中找不到變數set命令會將errorlevel設為1
set參數
set /a 用來設置運算式
支援以下運算式
() -組成一群
! ~ - -一元運算符
* / % -數字運算元
+ - -數字運算元
<< >> - 邏輯位移
& - 位元運算 and
^ - 位元運算 exclusive or
| - 位元運算 or
= *= /= %= += -= - 指定
&= ^= |= <<= >>=
, - 運算式分隔字元
如果您使用了任何邏輯或餘數運算子,您必須將運算式兩邊括上引號。
任何在運算式中非數字的字串會被當作環境變數,並且在使用前會先將
這些環境變數轉換為數字。如果您所指定的環境變數名稱尚未在目前環
境中定義,那麼它的值會被設為 0。這可以讓您用環境變數值來做運算
,而不必打入所有的 % 符號來取得它的值。如果 SET /A 是用指令檔
之外的命令列執行,它會顯示運算式最後的數值。指定運算子需要有個
環境變數在等號的左方。0x 字首在數字前方代表十六進位數字、0b 字
首代表二進位數字或 0 字首代表八進位數字,否則數字值都是指十進位
數字。所以 0x12 就和 18、022 等相同。請注意八進位數字可能容易
弄錯: 像 08 和 09 就不是正確的數字,因為 8 和 9 並不是八進位的
正確數字。
EX:set /a a=9+1 //用echo %a%時 會顯示10 如果不加上"/a"則顯示9+1
set /p 讓使用者輸入變數值
EX:set /p a=輸入: //當你啟動批次檔時 會看到"輸入:" 假設在後方輸入55 則 a的值就是55
==================================================================
動手做做看!
.
.
.
.
.
.
解答:
@echo off
title 第二支批次檔!
set /p a=請輸入一個數字:
set /a b=(%a%+5)*10
echo (%a%+5) X 10=%b%
pause
*轉載須附上文章出處http://nobrain-place.blogspot.com/2009/04/2.html
SET 顯示,設定或移除環境變數
用法:
set [variable=[string]
variable 指定環境變數名稱
指定設定給變數的一系列字元
這樣看或許很抽象
實地的示範一次就知道
@echo off
set a=hello //將a設為hello
echo %a% //解讀a的內容
pause
這時螢幕就會顯示hello 夠簡單吧!
用set來顯示環境變數
在CMD指令下輸入set p
就會顯示所有"P"開頭的環境變數
輸入set a
就會顯示所有"A"開頭的環境變數
以此類推
如果在目前的環境中找不到變數set命令會將errorlevel設為1
set參數
set /a 用來設置運算式
支援以下運算式
() -組成一群
! ~ - -一元運算符
* / % -數字運算元
+ - -數字運算元
<< >> - 邏輯位移
& - 位元運算 and
^ - 位元運算 exclusive or
| - 位元運算 or
= *= /= %= += -= - 指定
&= ^= |= <<= >>=
, - 運算式分隔字元
如果您使用了任何邏輯或餘數運算子,您必須將運算式兩邊括上引號。
任何在運算式中非數字的字串會被當作環境變數,並且在使用前會先將
這些環境變數轉換為數字。如果您所指定的環境變數名稱尚未在目前環
境中定義,那麼它的值會被設為 0。這可以讓您用環境變數值來做運算
,而不必打入所有的 % 符號來取得它的值。如果 SET /A 是用指令檔
之外的命令列執行,它會顯示運算式最後的數值。指定運算子需要有個
環境變數在等號的左方。0x 字首在數字前方代表十六進位數字、0b 字
首代表二進位數字或 0 字首代表八進位數字,否則數字值都是指十進位
數字。所以 0x12 就和 18、022 等相同。請注意八進位數字可能容易
弄錯: 像 08 和 09 就不是正確的數字,因為 8 和 9 並不是八進位的
正確數字。
EX:set /a a=9+1 //用echo %a%時 會顯示10 如果不加上"/a"則顯示9+1
set /p 讓使用者輸入變數值
EX:set /p a=輸入: //當你啟動批次檔時 會看到"輸入:" 假設在後方輸入55 則 a的值就是55
==================================================================
動手做做看!
.
.
.
.
.
.
解答:
@echo off
title 第二支批次檔!
set /p a=請輸入一個數字:
set /a b=(%a%+5)*10
echo (%a%+5) X 10=%b%
pause
*轉載須附上文章出處http://nobrain-place.blogspot.com/2009/04/2.html
動手做批次檔1
批次語法
批次(batch)語法 可視為一種腳本語言(Script) 語法結構簡單 撰寫容易 易修改 將寫完的程式碼存成.bat或是.cmd即可使用 相當的方便
在開始->執行->輸入CMD->輸入help 就會有指令的介紹
再把指令後方加上"/?"就會有更進一步的說明 EX:echo /?
第一支批次程式
用到的指令:echo , pause , title
首先 先在桌面上建立一的.txt的純文字檔 輸入以下內容 並存成.bat的檔案
@echo off
echo 我的第一支批次檔!
當您輸入完以上內容並執行後 會發現視窗出現一個黑色框框 一下子就消失了
這時只要加上"pause"就行了
@echo off
echo 我的第一支批次檔!
pause
這時就會顯示
這時就來解釋一下"第一支批次程式"的語法
@echo off //用來關閉顯示的路徑 "echo on" 為打開 前方的"@" 是用來隱藏"echo off"這句話的
echo 我的第一支批次檔! //echo 用來顯示文字訊息 若該行不顯示任何文字只需要加上"."-->echo.
pause //暫停
這時
煞風景的 左上角的標題卻顯示C:\WINDOWS\system32\cmd.exe
我們只需要用到"title"
@echo off
title 我的第一支批次檔 //對寫作病毒有興趣的朋友"title"是個很好用的東西 提示就到這啦!!
echo 我的第一支批次檔!
pause
還有還有不覺得"請按任意鍵繼續..."這句話很礙眼嗎?
只要把pause 改成 pause > nul 就可以了
最後的完成圖
*轉載須附上文章出處http://nobrain-place.blogspot.com/2009/04/1.html
批次(batch)語法 可視為一種腳本語言(Script) 語法結構簡單 撰寫容易 易修改 將寫完的程式碼存成.bat或是.cmd即可使用 相當的方便
在開始->執行->輸入CMD->輸入help 就會有指令的介紹
再把指令後方加上"/?"就會有更進一步的說明 EX:echo /?
第一支批次程式
用到的指令:echo , pause , title
首先 先在桌面上建立一的.txt的純文字檔 輸入以下內容 並存成.bat的檔案
@echo off
echo 我的第一支批次檔!
當您輸入完以上內容並執行後 會發現視窗出現一個黑色框框 一下子就消失了
這時只要加上"pause"就行了
@echo off
echo 我的第一支批次檔!
pause
這時就會顯示
這時就來解釋一下"第一支批次程式"的語法
@echo off //用來關閉顯示的路徑 "echo on" 為打開 前方的"@" 是用來隱藏"echo off"這句話的
echo 我的第一支批次檔! //echo 用來顯示文字訊息 若該行不顯示任何文字只需要加上"."-->echo.
pause //暫停
這時
煞風景的 左上角的標題卻顯示C:\WINDOWS\system32\cmd.exe
我們只需要用到"title"
@echo off
title 我的第一支批次檔 //對寫作病毒有興趣的朋友"title"是個很好用的東西 提示就到這啦!!
echo 我的第一支批次檔!
pause
還有還有不覺得"請按任意鍵繼續..."這句話很礙眼嗎?
只要把pause 改成 pause > nul 就可以了
最後的完成圖
*轉載須附上文章出處http://nobrain-place.blogspot.com/2009/04/1.html
訂閱:
文章 (Atom)