如果批处理文件中的条件组合

时间:2014-03-19 12:27:42

标签: batch-file

以下if条件作为IF NOT DEFINED PARAM_INSERT_DATE_US AND 如果没有定义PARAM_UPDATE_DATE_US GOTO END

IF NOT DEFINED PARAM_INSERT_DATE_US IF NOT DEFINED PARAM_UPDATE_DATE_US GOTO END

PARAM_INSERT_DATE_US和PARAM_UPDATE_DATE_US是批处理文件开头设置的两个变量。

但我想要类似的东西:

IF NOT DEFINED PARAM_INSERT_DATE_US OR IF NOT DEFINED PARAM_UPDATE_DATE_US GOTO END

有没有办法简明扼要地实现它?

显然我可以将if语句分成2来实现这种行为,但我正在寻找一种简洁的格式,因为我需要检查4个或更多变量。

我将不胜感激任何帮助。

感谢。

2 个答案:

答案 0 :(得分:0)

:elsewhere

...

if defined PARAM_INSERT_DATE_US IF DEFINED PARAM_UPDATE_DATE_US goto elsewhere
:end

可以胜任这项工作 - 以这种方式安排批次可能是游戏......

答案 1 :(得分:0)

这适用于您所描述的情况。

for %%a in (PARAM_INSERT_DATE_US PARAM_UPDATE_DATE_US) do if not defined %%a goto :END