/已关闭/为什么显示 ECHO 已关闭?

问题描述 投票:0回答:1
set /a swordparts=1

 If (%swordparts% GTR 0) (
  echo %swordparts%
 )



输出 ECHO 关闭。这是怎么回事?

我以为它会说 1,因为 %swordparts% 大于 0 且等于 1,当 %swordparts% 等于 0 时,我希望它不会回显任何内容

windows if-statement batch-file echo
1个回答
3
投票

(%swordparts%
=
(1

0)
=
0)

(1
不大于
0)
,因此
echo
不会被执行。

如果您得到任何输出,则它不是来自您发布的代码。

if
比较运算符
GTR
两侧的内容。

删除比较周围的括号,它应该按预期工作。

---但是---

如果正如我怀疑的那样,这段代码本身位于括号内的行序列(a

code block
)中,那么您需要提防延迟扩展陷阱

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