choice

提示使用者從批次程式中的單一字元選擇清單中選取一個專案,然後傳回所選取一個項目,然後傳回所選取選項的索引。 如果在沒有參數的情況下使用, 則 choice 會顯示預設選擇 YN

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 指定的預設選項之前暫停的秒數。 可接受的值介於 09999 之間。 如果 /t 設定為 0,則 choice 不會在傳回預設選項之前暫停。
/d <choice> 指定在等待 /t 指定的秒數之後要使用的預設選項。 預設選擇必須位於 /c 所指定的選擇清單中。
/米 <text> 指定要在選擇清單之前顯示的訊息。 如果未指定 /m ,則只會顯示選擇提示。
/? 在命令提示字元中顯示說明。

Remarks

  • ERRORLEVEL 環境變數會設為使用者從選項清單中選取的索引鍵索引。 清單中的第一個選項會傳回 1值、第二個值為 2等等。 如果使用者按下的鍵不是有效的選擇, 則選擇 會發出警告嗶聲。

  • 如果 choice 偵測到錯誤狀況,則會傳回 的 ERRORLEVEL255。 如果使用者按 CTRL+BREAK 或 CTRL+C,則 choice 會傳回 的 ERRORLEVEL0

Note

當您在批次程式中使用 ERRORLEVEL 值時,您必須以遞減順序列出它們。

Examples

若要顯示選項 YNC,請在批次檔中鍵入下列行:

choice /c ync

批次檔執行 choice 命令時,會出現下列提示:

[Y,N,C]?

若要隱藏選項 YNC,但顯示文字 YesNoContinue,請在批次檔中鍵入下列行:

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 會傳回與使用者選擇相對應的值。