这是我的代码:
IF EXIST %CD%\tictactoeXwinlog.log (
ECHO %xwinlog% > tictactoeXwinlog.log
) ELSE (
IF %xwinlog% > 0 (
ECHO %xwinlog% > %CD%\tictactoeXwinlog.log
) ELSE (
ECHO 0 > %CD%\tictactoeXwinlog.log
)
我用简单的英语尝试做的是检查日志文件是否存在。如果是,则将变量%xwinlog%的当前值写入日志,覆盖其中的任何内容。如果它不存在,我希望它确保变量的值大于0,如果是,则将其写入日志文件,如果不高于0,则将0写入日志文件。最后一部分是因为无论出于何种原因,当它试图将变量写入日志并且变量为0时,它会写入“ECHO is off”
我得到的是一个错误,说“)此时出乎意料”
非常感谢任何帮助。
答案 0 :(得分:3)
如果xwinlog是一个数值,那么您的代码可以简化为:
IF NOT %xwinlog% gtr 0 SET xwinlog=0
ECHO %xwinlog% > tictactoeXwinlog.log
如果winlog是一个字符串值,那么您的代码可以简化为:
IF "%xwinlog%"=="" SET xwinlog=0 or Any string of your choice... like Not Found
ECHO %xwinlog% > tictactoeXwinlog.log
答案 1 :(得分:1)
我想是缺少括号。
IF EXIST %CD%\tictactoeXwinlog.log (
ECHO %xwinlog% > tictactoeXwinlog.log
) ELSE (
IF %xwinlog% > 0 (
ECHO %xwinlog% > %CD%\tictactoeXwinlog.log
) ELSE (
ECHO 0 > %CD%\tictactoeXwinlog.log
)
)