一千萬個為什麽

搜索

通過批處理文件檢查輸入

我正在進行用戶輸入並檢查他們是否輸入了 ny ...並且它不起作用,因為它說兩種方式。

這就是我所擁有的:

@echo off
set /P theuserinput="Type your name: "
echo So your name is: %theuserinput%?
set /P isit="Y/N: "
echo You typed: %isit%
if (%isit% == "y") goto :saidyes
if (%isit% == "n") goto :saidno

:saidyes
echo Hooray!

:saidno
echo Aww
PAUSE

最佳答案

首先,您可以在兩個if之後添加默認goto。

然後,在兩個測試中,您必須在%isit%周圍添加引號並刪除括號。您還可以添加/ I標誌以執行不敏感的字符串比較。

最後,在每個echo之後添加goto以跳過下一個。

@echo off
set /P theuserinput="Type your name: "
echo So your name is: %theuserinput%?
set /P isit="Y/N: "
echo You typed: %isit%
if /I "%isit%" == "Y" goto :saidyes
if /I "%isit%" == "N" goto :saidno
goto :error

:saidyes
echo Hooray!
goto :end

:saidno
echo Aww
goto :end

:error
echo ERROR

:end
PAUSE

轉載註明原文: 通過批處理文件檢查輸入