提示使用者從批次程式中的單一字元選擇清單中選取一個專案,然後傳回所選取一個項目,然後傳回所選取選項的索引。 如果在沒有參數的情況下使用, 則 choice 會顯示預設選擇 Y 和 N。
Syntax
choice [/c [<choice1><choice2><…>]] [/n] [/cs] [/t <timeout> /d <choice>] [/m <text>]
Parameters
| Parameter | Description |
|---|---|
/c <choice1><choice2><…> |
指定要建立的選項清單。 有效選項包括 a-z、A-Z、0-9 和擴充 ASCII 字元(128-254)。 默認清單為 YN,會顯示為 [Y,N]?。 |
| /n | 隱藏選項清單,雖然選擇仍會啟用,且訊息文字 (如果由 /m 指定) 仍會顯示。 |
| /cs | 指定選項區分大小寫。 根據預設,選擇不會區分大小寫。 |
/噸 <timeout> |
指定在使用 /d 指定的預設選項之前暫停的秒數。 可接受的值介於 0 到 9999 之間。 如果 /t 設定為 0,則 choice 不會在傳回預設選項之前暫停。 |
/d <choice> |
指定在等待 /t 指定的秒數之後要使用的預設選項。 預設選擇必須位於 /c 所指定的選擇清單中。 |
/米 <text> |
指定要在選擇清單之前顯示的訊息。 如果未指定 /m ,則只會顯示選擇提示。 |
| /? | 在命令提示字元中顯示說明。 |
Remarks
ERRORLEVEL 環境變數會設為使用者從選項清單中選取的索引鍵索引。 清單中的第一個選項會傳回
1值、第二個值為2等等。 如果使用者按下的鍵不是有效的選擇, 則選擇 會發出警告嗶聲。如果 choice 偵測到錯誤狀況,則會傳回 的 ERRORLEVEL 值
255。 如果使用者按 CTRL+BREAK 或 CTRL+C,則 choice 會傳回 的 ERRORLEVEL 值0。
Note
當您在批次程式中使用 ERRORLEVEL 值時,您必須以遞減順序列出它們。
Examples
若要顯示選項 Y、 N 和 C,請在批次檔中鍵入下列行:
choice /c ync
批次檔執行 choice 命令時,會出現下列提示:
[Y,N,C]?
若要隱藏選項 Y、 N 和 C,但顯示文字 Yes、 No 或 Continue,請在批次檔中鍵入下列行:
choice /c ync /n /m "Yes, No, or Continue?"
Note
如果您使用 /n 參數,但不使用 /m,則 當選擇 等待輸入時,不會提示使用者。
若要同時顯示上述範例中使用的文字和選項,請在批次處理檔中輸入下列這一行:
choice /c ync /m "Yes, No, or Continue"
若要將時間限制設定為五秒,並將 N 指定為預設值,請在批次檔中鍵入下列行:
choice /c ync /t 5 /d n
Note
在此範例中,如果使用者在五秒內未按下按鍵,則 choice 預設會選取 N ,並傳回錯誤值 2。 否則, choice 會傳回與使用者選擇相對應的值。