我是在Windows上批处理文件编程的新手,所以希望有人可以帮助我: 我想使用批处理文件来总结一个名为'TEST.csv'的csv文件中第3列的所有值:
01/01/2013;1;1342
01/01/2013;2;1484
01/01/2013;3;1528
之后,我想使用if语句:
如果第3列的总和不等于0,则启动特定程序blabla.exe
非常感谢!
答案 0 :(得分:2)
setlocal enabledelayedexpansion
for /f "tokens=3 delims=;" %%a in (test.csv) do (
set /a num=!num!+%%a
)
if !num! GTR 0 blabla.exe
处理小数:
setlocal enabledelayedexpansion
for /f "tokens=3 delims=;" %%a in (test.csv) do (
set num=!num!+%%a
)
set num=!num:~1!
call :Eval !num! ret
if %ret% GTR 0 blabla.exe
exit /b
:Eval in out
setlocal
if exist eval.vbs del eval.vbs
>eval.vbs echo wsh.echo eval("%1")
for /f "delims=" %%a in (
'cscript //nologo eval.vbs'
) do endlocal & set %~2=%%a
del eval.vbs