我正在尝试调用一个函数,例如:dosomething在我的1.bat文件中。该函数存在于2.bat文件中。我怎么称呼它?
答案 0 :(得分:0)
可以在1.bat中调用函数存根,然后在不调用
的情况下调用2.bat:: 1.bat
@Echo off
Echo This is 1.bat
Call :dosomething args
Echo back in 1.bat
pause
Exit /b
:dosomething
Echo Sub %0 in 1.bat
2.bat %*
:: 2.bat
@goto :Eof
:dosomething
Echo this is 2.bat %*
示例运行:
This is 1.bat
Sub :dosomething in 1.bat
this is 2.bat args
back in 1.bat
Press any key to continue . . .
答案 1 :(得分:0)
这里的常规方法是1.bat
call 2.bat something realparameterlist
和2.bat的结构是:
@echo off
shift&goto %1
:something
(whatever)
goto :eof
当然,这可以变得更聪明:
@echo off
set "junkvar=%1"
if "%junkvar:~0,1%"==":" shift&goto %1
:: processing if first arg doesn't begin ':'
:something
(whatever)
goto :eof
提供的第一个参数必须从:
应该注意的是,无论是采用更简单还是更复杂的方法,%*
仍将包含[:]routinename
。