1、@ 一般在它之后緊跟一條命令或一條語句,則此命令或語句本身在執行的時候不會顯示在屏幕上。請把下面的代碼保存為test.cmd文件,然后運行,比較一下兩條echo語句在屏幕上的輸出差異: echo a @pause @echo b @pause 執行結果如下: C:/Documents and Settings/JM/桌面>echo a a 請按任意鍵繼續...
請按任意鍵繼續...2、%、%% 百分號用在不同的場合,有不同的含義: ① 當百分號成對出現,并且其間包含非特殊字符時,一般做變量引用處理,比如:%var%、%str%。把以下代碼保存為批處理文件,運行后觀察屏幕顯示結果: @echo off set str=abc echo 變量 str 的值是: %str% pause 在屏幕上將顯示這樣的結果: 變量 str 的值是: abc 按任意鍵繼續... 另外,百分號作為變量引用還有一種特殊形式,那就是對形式參數的引用,此時,單個百分號后面緊跟0~9這10個數字,如%0、%1,其中,%0為腳本本身的名稱,%1至%9為第二至九個參數...最多支持%0~%9,%10以后就是變量引用了,即%15為%1的值接上5。 請看演示代碼: @echo off if defined str goto next set str= set /p str=請把文件拉到本窗口后回車: call "%~0" %str% pause exit :next cls echo 本批處理文件完整路徑為:"%~0" echo 拖到本窗口的文件完整路徑為:"%~1" goto :eof ② 出現在 set /a 語句中時,表示兩數相除取余數,也就是所謂的模運算,它在命令行窗口和批處理文件中的寫法略有差異:在命令行窗口中,只需要單個的%,在批處理文件中,需要連續兩個百分號,寫成%%。 例如:在命令行窗口中,運行 set /a num=4%2 ,則結果將顯示0,因為4除以2的余數為0;如果保存為批處理文件,則此語句將略有改變: @echo off set /a num=4%%2 echo 4除以2的余數為 %num% pause ③ 轉義符號:如果要顯示%本身時,需要在前面用%來轉義。例如: @echo off echo 一個百分號:%% echo 兩個百分號:%%%% echo 三個百分號:%%%%%% pause3、:、::