[在选择特定选项时包括另一个选项/文件

问题描述 投票:1回答:1

我制作了一个简单的批处理文件,通过启动时提供的一些选项来执行可执行文件。

类似这样的东西:

:A
Echo Option 1
Echo Option 2
Set /p set1=Choice :
if %set1%==1 set A=Set1_1
if %set1%==2 set A=Set1_2
goto Set_2

:B
Echo Option A
Echo Option B
Set /p set2=Choice :
if %set2%==A set B=Set2_A
if %set2%==B set B=Set2_B
goto launch

:launch
program.exe -%A% -%B%

因此基本上可以。但是,如果同时选择了“选项1”和“选项A”,我需要的是为程序添加另一个启动参数的方法。不在“选项2”和“选项B”中。

以便我的启动看起来像这样

program.exe -%set1% -%set2% -%if1_A%

对不起,如果让我感到困惑,请让我知道是否需要澄清或进一步说明。 :)

batch-file cmd command
1个回答
0
投票

unested

如果变量未设置为任何值,则它将扩展为无。设置您的第三个变量,并确保在不满足条件的情况下未设置该变量。像这样的东西:

set if1_a=
if "%set1%"=="1" (
   if "%set2%"=="A" (
      set "if1_a=-option"
   )
)

program.exe -%set1% -%set2% %if1_A%

注意,我将连字符作为变量的一部分。也可能应该是:

program.exe -%A% -%B% %if1_A%

最后您可能想使用if /i使其不区分大小写。

© www.soinside.com 2019 - 2024. All rights reserved.