Batch file 在批处理脚本中,我们可以在for循环中使用IF条件吗?
我正在使用上面的代码,但无法循环,它只是在执行echo%b filename.txt: 12:38:32249信息[SoapUIRunner]已完成运行SoapUI测试用例[Course Order],所用时间:14124ms,状态:FAILED 12:38:34441信息[SoapUIRunner]已完成运行SoapUI测试用例[Ping],所用时间:2136ms,状态:Finished[ducking crossfire] 现在-别那么快,伙计们 正如所写的,代码应该执行 但是报告Batch file 在批处理脚本中,我们可以在for循环中使用IF条件吗?,batch-file,scripting,windows-scripting,Batch File,Scripting,Windows Scripting,我正在使用上面的代码,但无法循环,它只是在执行echo%b filename.txt: 12:38:32249信息[SoapUIRunner]已完成运行SoapUI测试用例[Course Order],所用时间:14124ms,状态:FAILED 12:38:34441信息[SoapUIRunner]已完成运行SoapUI测试用例[Ping],所用时间:2136ms,状态:Finished[ducking crossfire] 现在-别那么快,伙计们 正如所写的,代码应该执行 但是报告 (if
(if FINISHED == FINISHED (echo "SUCCESS" ) else (echo FINISHED ) )
现在,粗心的人会认为它的行为不符合逻辑——但令人难以置信的是,它的确如此
关键是,如果%b
==
完成,则使用令牌流执行比较。%str1%
中的前导空格被解析器占用,因为它是可选的分隔符。然后,由于%b
包含前导空格,处理将正确地确定%b
的内容与完成的内容不同
已发布代码的修复:
FINISHED
其中引号指示cmd
不要将str1
中的前导空格视为分隔符
当然,如果这是批处理文件中的一行,因为它应该克服永久性的重新键入问题,那么元变量的%
s确实应该加倍
提示:使用set“var1=data”
设置值-这可以避免尾随空格引起的问题。在比较中,如果“thing1”==“thing2”…
使用以避免由thing1/2中的空格引起的问题[ducking crossfire]
现在-别那么快,伙计们
正如所写的,代码应该执行
但是报告
(if FINISHED == FINISHED (echo "SUCCESS" ) else (echo FINISHED ) )
现在,粗心的人会认为它的行为不符合逻辑——但令人难以置信的是,它的确如此
关键是,如果
%b
==
完成,则使用令牌流执行比较。%str1%
中的前导空格被解析器占用,因为它是可选的分隔符。然后,由于%b
包含前导空格,处理将正确地确定%b
的内容与完成的内容不同
已发布代码的修复:
FINISHED
其中引号指示cmd
不要将str1
中的前导空格视为分隔符
当然,如果这是批处理文件中的一行,因为它应该克服永久性的重新键入问题,那么元变量的%
s确实应该加倍
提示:使用set“var1=data”
设置值-这可以避免尾随空格引起的问题。在比较中,如果“thing1”==“thing2”…
使用以避免由thing1/2中的空格引起的问题