批处理for循环内外同样的if语句判断语句执行效果不一样,请大侠帮忙看下。

2025-03-23 22:53:33
推荐回答(1个)
回答1:

晕,你开启了变量延迟。而一部分知道用叹号 !来引用变量。

结果,又变成了 百分号 % 如下:

@echo off&setlocal enabledelayedexpansion

set "src_file=o.hex"

set "z=047FD4"

for /f "delims=" %%i in (%src_file%) do (

set /a n+=1

set var=%%i

if !n!==55 set var1=%%i

set newStr1=!var1:~1,6!

if !newSTr1! EQU !z!  echo ok1111)

pause>nul