如何在Windows批处理文件中检索多个用户输入?
@echo off
echo Type tomcat, mvn
set /p input=Enter Selection:
if /i "%input1%" EQU "tomcat" goto tomcat
if /i "%input%" EQU "mvn" goto maven
:tomcat
cd /D C:\Tools\apache-tomcat-7.0.55>start.
start .
GOTO EOF
:maven
cd /D C:\Tools\apache-maven-3.2.2
start .
GOTO EOF
:EOF
我为自己创建了一个小实用程序bat文件,所以当我输入tomcat时,如果输入mvn,它会打开tomcat或maven。但是,我想输入类似tomcat deploy的东西,它将在tomcat目录中运行deploy.bat文件。
答案 0 :(得分:1)
您可以使用CALL
,SHIFT
,IF
和GOTO
来解析或迭代用户输入。阅读这些命令的HELP
页,然后尝试使用此代码,这应该可以帮助您入门。
首先获取用户输入,并将其作为CALL
set /p input=Enter selection:
call :doall %input%
goto :eof
然后将参数视为参数%1%2%3 ...,SHIFT
将它们转换为%1
并使用GOTO
循环直到完成({{1} }%1为空)
IF
或您可以专门处理每个参数
:doall
echo %1
shift
if .%1==. goto :eof
goto :doall