我有一个问题需要批量使用"call“命令:
如果我有这样的事情:打电话给Receive.bat
然后在后面的代码中:调用Receive.bat gtg
在Receive.bat中,我“呼应”它。会不会是: echo &1 (表示"hi"),然后是: echo %2 (表示"gtg")?
这就是我得到的:
@echo off
set /p Mood=:
call Receive.bat %Mood%
*Random stuff*
set /p Food=:
call receive.bat %Food%然后在Receive.bat中:
@echo off
echo %1 <-- for Mood
pause
*Random Stuff*
echo %2 <-- for Food发布于 2015-02-18 06:15:58
如果我对您的要求有正确的理解,下面的批处理文件应该做您想做的事情。
Main.bat
@echo off
set "CallCount=0"
set "Mood="
set /P "Mood=Your mood is: "
call Receive.bat "%Mood%"
rem *Random stuff*
set "Food="
set /P "Food=The food you want is: "
call Receive.bat "%Food%"
set "CallCount="Receive.bat
set /A CallCount+=1
if "CallCount"=="2" goto Call2
if not "%~1"=="" echo %~1
rem *Random Stuff*
goto :EOF
:Call2
if not "%~1"=="" echo %~1
rem Commands for second call.候补Receive.bat
set /A CallCount+=1
goto Call%CallCount%
:Call1
if not "%~1"=="" echo %~1
rem *Random Stuff*
goto :EOF
:Call2
if not "%~1"=="" echo %~1
rem Commands for second call.
goto :EOF
:Call3
if not "%~1"=="" echo %~1
rem Commands for third call.
goto :EOF
:Call4
if not "%~1"=="" echo %~1
rem Commands for fourth call.
goto :EOFhttps://stackoverflow.com/questions/28574422
复制相似问题