如何在批处理文件中使用 if 语句?

如何在批处理文件中使用 if 语句?

我的批处理文件中有以下 for 循环:

for /f %%y in ('findstr /C:"%%c" out.txt ^| sed "s/.*%%c \([^>]*\).*/\1/i"') do SET RESULT=%%y
echo.%%a;%%b;%%c;!RESULT!>>D:\outputTA.txt

for 循环中的变量是%%y,我想以某种方式使用 if 语句:

if my variable > 1000 then

set Result to round my variable / 32

else 

set Result to round my variable

有谁知道如何在批处理文件中执行此操作?

答案1

以下是我解决问题的方法:

for /f "tokens=1,2 delims=." %%A in ("!RESULT!") do (
if %%A LSS 1000 (
    set int=%%A
    if not "%%B"=="" (
        set decimal=%%B
        set decimal=!decimal:~0,1!
        if !decimal! GEQ 5 (
            set /a int+=1
        )
    )
) else (
    if %%A GTR 1000 (
        set /a int=%%A/32
    set /a int+=1
    )
    )
   echo !int!
  echo.%%a;%%b;%%c;!int!>>D:\outputTA.txt

相关内容