使用选择卡住循环?

时间:2014-07-10 20:24:40

标签: batch-file cmd

因此,在运行我的代码时,我收到一条消息:

  

"系统找不到指定的驱动器。"

看起来它正在循环......

@echo off
@title CHOICE
:menu
cls
CHOICE /c:123456789 /N /M "Enter: "
if errorlevel  6 goto MSG
if errorlevel  5 goto WORF
if errorlevel  4 goto HRF
if errorlevel  3 goto MELFI
if errorlevel  2 goto MSRR
if errorlevel  1 goto EXPRESS
goto end
:EXPRESS
    ECHO EXPRESS
    call EXPRESS.BAT
goto MENU
:MSRR
    ECHO MSRR 
    call MSRR.BAT
goto MENU
:MELFI
    ECHO MELFI
    call MELFI.BAT
goto MENU
:HRF
    ECHO HRF
    call HRF.BAT
goto MENU
:WORF
    ECHO WORF
    call WORF.BAT
goto MENU
:MSG
    ECHO MSG
    call MSG.BAT
goto MENU
@pause

1 个答案:

答案 0 :(得分:0)

这是执行代码操作的一种有点棘手的方法:您的问题可能出在您正在调用的批处理文件中。 REM退出cls命令以查看是否出现任何有用的错误消息:

@echo off
title CHOICE
:menu
cls
CHOICE /c:1234567 /N /M "Enter a numeral from 1-6 (7 to quit): "

if errorlevel  1 set "routine=EXPRESS"
if errorlevel  2 set "routine=MSRR"
if errorlevel  3 set "routine=MELFI"
if errorlevel  4 set "routine=HRF"
if errorlevel  5 set "routine=WORF"
if errorlevel  6 set "routine=MSG"
if errorlevel  7 exit

echo %routine%
call "%routine%.bat"
goto :menu