是否可以对多个变量进行 if then 命令检查,而不仅仅是一个

Vic*_*vez 1 batch-file

基本上,你能做到这一点:

if %num1% == 1 echo hi
if %num1% == 5 echo hi
if %num1% == 9 echo hi
Run Code Online (Sandbox Code Playgroud)

以更简单的方式,例如:

if %num1% == 1,5,9 echo hi
Run Code Online (Sandbox Code Playgroud)

编辑:也许让我的意图更明确。

dbe*_*ham 5

使用变量扩展查找/替换来测试值是否嵌入到测试变量中。如果结果与原始测试值不匹配,则找到了相关值。

setlocal enableDelayedExpansion
set "test= 1 5 9 "
if !test: %num% =! neq !test! echo Hi
Run Code Online (Sandbox Code Playgroud)

%num%如果您可能要处理大于等于 10 的数字,则测试中以及周围的前导和尾随空格至关重要。

与数字搜索无关,但此技术不区分大小写 - 它无法区分大小写。