批處理符號 學習
1.@
作用:關閉當前行的回顯
如:@ echo off 說明:即不顯示echo off 這一命令(echo off 的作用是不顯示後面將要執行的DOS命令)
2.>
作用:輸出重新導向符號,將DOS命令執行的結果輸入到指定檔案中
如:ipconfig >ip.txt
說明:將ipconfig的結果輸入到ip.txt中
注:若ip.txt不存在,則建立一個ip.txt檔案,並將DOS命令執行結果存放其中.否則,將覆蓋掉原來ip.txt中的內容.
3.>>
作用:輸出重新導向符號,將DOS命令執行的結果追加到指定的檔案中
如:ipconfig >>ip.txt
說明:將ipconfig的結果追加到ip.txt中
注:若ip.txt不存在,則建立一個ip.txt,並將DOS命令執行結果存放其中(效果相當於ipconfg >ip.txt).
否則,將在原來ip.txt末尾追加DOS命令執行結果.
4.&
作用:將多個DOS命令串連起來順序執行
如:ping www.clin003.com & ping www.clin003.com >ip.txt
說明:ping tom網站,並將ping的結果寫入ip.txt(不管ping是否成功)
注:若其中某個DOS執行失敗,後面的命令也將依然要執行.
5.&&
作用:將多個DOS命令串連起來順序執行
如:ping www.clin003.com && ping www.clin003.com >ip.txt
說明:若ping tom網站成功,則將ping的結果寫入ip.txt中
注:若其中某個DOS命令執行失敗,則後面的命令將不再執行.
6.|
作用:管道命令,將前一DOS命令執行結果傳到下一DOS命令中
如:ipconfig | find /i "ip address"
說明:執行ipconfig命令,尋找帶有"ip address"字串的行並顯示出ip地址
7.||
作用:用於執行多條命令,當某一命令正確執行後將不再執行後面的命令,如果沒有出現正確的命令則一直執行完所有命令.
ping www.clin003.com >>ip.txt||ping clin003.com >>ip.txt ||ping hi.clin003.com >>ip.txt
說明:依次ping tom,163,sina,如果ping通,將不再執行後面的ping,並將ping的結果輸入到ip.txt中
8.^
作用:^是對特殊符號> < &的前置字元,使這三個符號失去它們的作用,將被作為一般字元對待.
如:(1)echo 前置字元 ^>test.txt 說明:顯示"前置字元 >test.txt"
(2)echo 前置字元 >test.txt 說明:將"前置字元"輸入到test.txt檔案中
9.""
作用:字串界定符
有些字串中帶有空格,在精確比較時要加上引號
如:
@echo off
::比較字串是否相等
:InputName
set /p name=請輸入姓名:
if /i "%name%"=="zhang yang" (
echo success
goto Exit
) else (
echo failure
goto InputName
)
:Exit
pause
說明:判斷輸入的姓名是不是"zhang yang",若是,則輸出"success",否則輸出"failure",並繼續輸入姓名.
10.()
作用:包含命令,將多個命令括起來.相當於C語言中的{ }
如:在9的例子中,if 和else命令中各有兩條命令,都用()括起來.
11.:
作用:標號,起跳轉作用,格式為":標號名",常和goto合起來使用(goto 標號名).
如:在9的例子中,有兩個標號:InputName 和Exit
12::
作用:起注釋作用,和rem 命令相同,都相當於C語言中的//(單行注釋)
如:9中的"::比較字串是否相等"
13./
作用:參數引導開關符
如:在9的例子中,if 命令後加/i參數表示:將進行比較的字串不分大小寫.輸入ZHANG YANG 也會顯示"success".
14.%
作用:變數引導符
格式:(1)作參數:批處理每次能處理的變數從%0~%9共10個,其中%0預設給批處理的檔案名稱使用;
(2)自訂變數引用方式:%變數名%;
(3)在for迴圈中,迴圈變數引用格式:%%變數名.
如:SUM.bat
@echo off
::求1+2+3+…
set sum=0
for /l %%i in (1,1,%1) do set /a sum+=%%i
echo 1+2+3+…+100=%sum%
pause
說明:在命令列下輸入SUM 100,顯示結果為:
1+2+3+…+100=5050
請按任意鍵繼續. . .
其中SUM 100,100為輸入的第一個參數,在批處理中用%1來引用,sum為自訂變數,引用sum值時用%sum%,而i為for迴圈中的迴圈變數,引用i值時用%%i.