批處理指令碼——基礎
什麼是批處理指令碼
批處理是Windows下的一種指令碼(後面統稱批處理指令碼),一般就是字尾為.bat或者.cmd的檔案。雙擊該檔案,或者在命令列中輸入該檔名(注意絕對路徑和相對路徑),就可以逐行執行其中的內容。
批處理指令碼執行環境
批處理指令碼由Windows下面的cmd.exe程式來處理,可以通過如下的方式來開啟一個cmd.exe,它表現為一個命令列視窗:
1. 按下鍵盤中的Win+R鍵,跳出如下的介面:(測試機器是Win10系統)
2. 輸入cmd,按回車鍵跳出如下介面:
在該命令列介面中就可以執行批處理指令碼。
一個簡單的例子
下面是一個最簡單的批處理指令碼示例:
echo "Hello world"
下面是執行的結果:
重點在於紅框中的內容,之前的部分只是為了進入批處理指令碼所在的目錄。因為如果不在當前目錄,就需要指定批處理指令碼的絕對路徑。
回到批處理指令碼本身,它就是簡單的列印了一句“Hello world”。
這裡的echo是一個內建的命令,可以通過help檢視所以支援的命令:
還可以進一步檢視echo命令說明:
總之該命令可以接受一個字串作為引數然後會回顯到命令列中。
關於該指令碼還有兩點需要說明:
1. 之前已經提到cmd.exe會逐行(由於各種條件和跳轉執行存在,所以實際也不是逐行)執行批處理腳本里面的語句,所以從之前的顯示中也可以看到該命令也被顯示到了介面上:
如果不想顯示該語句,一種方法是使用echo的ON和OFF引數,程式碼修改如下:
echo off
echo "Hello world"
echo on
結果如下:
可以看到結果並不是很好,因為echo off這條語句本身沒有被隱藏,另外一種更簡單的方式是在語句前加上“@”符號,程式碼修改如下:
@echo "Hello world"
結果如下:
可以看到回顯消失。
2. 前面也提到過可以通過雙擊來執行批處理指令碼,但是這裡如果執行雙擊,會發現命令列一閃而過,無法看到結果,這時可以使用另一條命令PAUSE,程式碼修改如下:
@echo "Hello world" @PAUSE
此時雙擊該指令碼,就會出現如下的介面:
此介面一直保持到有其它輸入後消失。
以上是關於批處理指令碼的最基本介紹。