doc 變數
變數 設定變數 批次檔使用的變數就是作業系統的 環境變數 ,一般來說都視為字串變數,而且是是全域變數,我們可以透過下面的指令觀察有哪些環境變數。 set 設定變數時,一樣使用 set 指令, 注意等號左右不能有空白 。 set myname=Peter 若設定的變數代表路徑時,因為路徑中可能包含空白字元,建議以雙引號含括起來較好,單純顯示沒問題,但在命令列解析時,因為會以空白當作參數分隔,若沒有用雙引號時,會被分開當成2個參數處理,造成錯誤。 set ProgramPath="c:\Program Files (x86)" 取用變數 取用變數時,則需在變數前後加上% echo %myname% 取消變數 取消變數時,只需依照設定變數的方式,但值是空白即可 set var= 變數的運算 set 使用 /a 參數,可使後面的敘述成為運算式 set var=6 set /a var+=3 需注意的是,若變數的值為08或09的時候,會被視為一個錯誤的8進位而其值為0,影響後續的計算 set var=08 set /a var+=3 set var=09 set /a var+=3 輸入提示 set 使用 /p 參數,等號(=)開始到冒號(:)結束的一段文字將視為輸入的提示 @echo off :menu echo 1.dir echo 2.dir /w echo 0.離開 set /p id=請輸入功能代碼: if %id%==1 goto one if %id%==2 goto two if %id%==0 goto zero :one dir goto menu :two dir /w goto menu :zero 字串的擷取 批次檔也可以像一般程式語言一樣,做到從字串的第n個位置開始擷取m個字元這件事 步驟 %date% %date :~0,4 % 說明 當下日期變數 變數從第0位開始取4碼 1 值 2015/10/17 週六 2015 上述說明的程式碼如下 set today=%date:~0,4%/%date:~5,2%/%date:~8,2% echo %today% 1 字串擷取符號說明 冒號(:) 波浪符號(~) 開始位置(從0...