我正在寻找一种使用Windows批处理文件的方法,该文件调用子批处理文件,该文件传递1-9个参数并返回值(字符串),而无需将返回值保存到文件/ etc中.返回值我保存到变量中,就像在@FOR/F中一样
我看着
@FOR /F "tokens=*" %%i IN ('%find_OS_version%') DO SET OS_VER=%%i
Run Code Online (Sandbox Code Playgroud)
和
Call function/batch %arg1% %arg2%
Run Code Online (Sandbox Code Playgroud)
我没有看到我如何设置这样做
编辑:dbenham有点回答我的问题.他的例子是批处理文件主要部分和功能之间.我的问题是两个不同的批处理文件.基础dbenham回答这是以下布局.
主批文件
CALL sub_batch_file.bat return_here "Second parameter input"
REM echo is Second parameter input
ECHO %return_here%
REM End of main-batch file
Run Code Online (Sandbox Code Playgroud)
sub_batch_file.bat
@ECHO OFF
SETLOCAL
REM ~ removes the " "
SET input=%~2
(
ENDLOCAL
SET %1=%input%
)
exit /b
REM End of sub-batch file
Run Code Online (Sandbox Code Playgroud) batch-file ×1