Batch file 如何将参数数组传递给批处理文件?
我有一个名为Formalbuild.bat的批处理文件,它将使用名为componentName的参数名 例如,我将构建不同的组件,如下所示Batch file 如何将参数数组传递给批处理文件?,batch-file,Batch File,我有一个名为Formalbuild.bat的批处理文件,它将使用名为componentName的参数名 例如,我将构建不同的组件,如下所示 Formalbuild.bat ServiceComponent Formalbuild.bat DatamodelComponent Formalbuild.bat ... ... Formalbuild.bat SomeXYZComponent 是否可以创
Formalbuild.bat ServiceComponent
Formalbuild.bat DatamodelComponent
Formalbuild.bat
...
...
Formalbuild.bat SomeXYZComponent
是否可以创建组件名称数组,并将一个组件逐个传递到批处理文件以进行构建?简单的计数循环难道不够吗
for /l %%x in (1,1,N) do call Formalbuild.bat Component%%x
将N
替换为正确的编号
如果要在命令行上运行此命令,请使用
for /l %x in (1,1,N) do Formalbuild.bat Component%x
由于您的问题中有一个PowerShell标签(尽管您从未提及):
与往常一样,用实际值替换N。由于只有组件名称发生更改,您可以使用
for
循环,或者更好地使用for/f
循环
for %%a in (
Component1
Component2
Component3
...
...
ComponentN) do call :FormalBuild %%a
:FormalBuild
set THING_TO_BUILD=%1
REM call your build stuff here with %THING_TO_BUILD% identifying what you are building
FOR %%C in (ServiceComponent DatamodelComponent SomeXYZComponent ) do (
call Formalbuild.bat %%C
)
如果组件列表很长,您还可以将其拆分为多行
FOR %%C in (ServiceComponent
DatamodelComponent
component3
...
component_n
SomeXYZComponent ) do (
call Formalbuild.bat %%C
)
我更新了我的问题,因为它假设我可以通过改变最后一位数字来循环。
FOR %%C in (ServiceComponent
DatamodelComponent
component3
...
component_n
SomeXYZComponent ) do (
call Formalbuild.bat %%C
)