访问另一个批处理文件中的批处理函数

Jar*_*ard 11 batch-file

好吧,让我们说我们有一个名为"lib.cmd"的文件

@echo off
GOTO:EXIT

:FUNCTION
     echo something
GOTO:EOF

:EXIT
exit /b
Run Code Online (Sandbox Code Playgroud)

然后我们有一个名为"init.cmd"的文件

@echo off

call lib.cmd
Run Code Online (Sandbox Code Playgroud)

无论如何都要访问:init.cmd中的FUNCTION?就像bash使用"source"一样,将另一个bash文件运行到同一个进程中.

npo*_*aka 18

改变你lib.cmd的样子;

@echo off
call:%~1
goto exit

:function
     echo something
goto:eof

:exit
exit /b
Run Code Online (Sandbox Code Playgroud)

然后传递给批处理文件(%~1)的第一个参数将标识为您要调用的函数,因此将call:%~1调用它,现在您可以init.cmd通过以下方式调用它:

call lib.cmd function
Run Code Online (Sandbox Code Playgroud)