2012-09-27 52 views
1

我有批處理此腳本,並得到了一系列的問題1-12。
我所有的代碼工作,但我似乎無法找到一個代碼投入我的批處理,以拋出錯誤消息的無效範圍選擇如何將批量的範圍設置爲批錯誤級別?

例子:如果我選13,這是不是選項部分,它會自動變爲1
我想從13所有號碼後,顯示「無效選項」,然後回到默認的選擇菜單。

我不是在我的批處理使用shift命令,我只是用下面的代碼,而不是

set /p choice=Type the number that corresponds to the Step you want to take. 
if not '%choice%'=='' set choice=%choice:~0% 

通知之~0允許我使用過9而不是使用shift命令號碼。
儘管如此,我需要的代碼會說如果用戶輸入13或者出現錯誤並且出現錯誤。
任何想法?換句話說,如果選擇範圍13 - 999顯示錯誤。

更新

好了,所以,我看着我的代碼,實現我錯過了一行代碼。這是

@echo「%選擇%」不是一個有效的選擇/選項

看來,我的編碼是正確的,我給了「%選擇%」 ==「」我只是didnt留下回應,說選擇是錯誤的。原來我並不需要任何錯誤級別。

希望這可以幫助別人

回答

0

只是爲了澄清:下面的代碼將輸出,如果選擇的是大於13,並且輸入的值設置爲第一個字符一個錯誤的語句進入

@echo off

SET /P choice=Type the number that corresponds to the Step you want to take.

IF %choice% GTR 12 GOTO Error

ECHO You entered %choice%

GOTO End

:Error

ECHO %choice% is not a valid selection/option

set choice=%choice:~0,1%

ECHO %choice%

:End