Windows 在不按enter键的情况下获取用户输入
这是我的代码,我不希望用户必须按enter键才能做出选择。我尝试了几件事,但都没有成功Windows 在不按enter键的情况下获取用户输入,windows,batch-file,cmd,Windows,Batch File,Cmd,这是我的代码,我不希望用户必须按enter键才能做出选择。我尝试了几件事,但都没有成功 @echo off :debut mon menu a moi cls echo 1.Calculatrice echo 2.Task manager echo 3.msconfig echo 4.Notepad echo 5.ipconfig echo 6.quit echo. set /p /c choix=" Choisir
@echo off
:debut mon menu a moi
cls
echo 1.Calculatrice
echo 2.Task manager
echo 3.msconfig
echo 4.Notepad
echo 5.ipconfig
echo 6.quit
echo.
set /p /c choix=" Choisir votre application : "
if "%choix%"=="1" goto menu1
if "%choix%"=="2" goto menu2
if "%choix%"=="3" goto menu3
if "%choix%"=="4" goto menu4
if "%choix%"=="5" goto menu5
if "%choix%"=="6" goto menu6
我没有包括菜单,因为它不相关
setlocal enableextensions disabledelayedexpansion
rem选项1-使用选择命令(如果可用)
回声-------------------------------------------
rem询问选项
选项/n/c 1234560/m“Choisir votre应用程序:”
rem每个选项按其包含的相同顺序设置错误级别。
rem有必要按递减顺序进行测试
如果错误级别为7(
回显选定的0
)否则,如果错误级别为6(
回声选择6
)否则,如果错误级别为5(
回声选择5
)否则,如果错误级别为4(
回声选择4
)否则,如果错误级别为3(
回声选择3
)否则,如果错误级别为2(
回声选择2
)否则,如果错误级别为1(
回声选择1
)
rem或者,也可以使用此sintax
rem在这种情况下,测试顺序不相关
如果选择了“%errorlevel%”==“1”回显1
如果“%errorlevel%”==“2”已选择回送2
如果“%errorlevel%”==“3”已选择回送3
如果选择了“%errorlevel%”==“4”回显4
如果“%errorlevel%”==“5”已选择回音5
如果选择了“%errorlevel%”==“6”回显6
如果选择了“%errorlevel%”==“7”回显0
rem选项2-使用xcopy检索按键
回声-------------------------------------------
显示提示
选项
命令返回介于1和6之间的errorlevel值(如果用户按Ctrl-C,则返回0),因此转到菜单%errorlevel%
命令直接传输到所需的标签,而无需任何额外检查。有关详细信息,请键入:choice/?
可能是我认为您需要的命令,而不是set/p
。。。
@echo off
cls
echo 1.Calculatrice
echo 2.Task manager
echo 3.msconfig
echo 4.Notepad
echo 5.ipconfig
echo 6.quit
echo.
choice /C 123456 /M "Choisir votre application : "
goto menu%errorlevel%
:menu1
echo Calculatrice
. . .
:menu6
:menu0
echo Quit