我有一个很长的脚本,我将其压缩为以下代码行来说明我遇到的问题。我尝试了 StackOverflow 用户的一些建议,但无济于事,因此希望您的反馈对我和未来的用户有所帮助。注意:此代码有效,除了设置 pdfREP 嵌套变量。
SETLOCAL 启用延迟扩展 设置 pdfREP=false for /f "tokens=1" %%a in ('dir /o /b \\path2document\*.rp?') 做 ( findstr "," \\path2log\%%a > 1.log 如果不是错误级别 0 ( :: 做点什么 ) 如果错误级别 0 ( findstr /B /I "p" \\path2document\%%a > 1.log 如果错误级别 == 0 ( 设置 pdfREP=true 回显 RSP 文件:%%a >> 2.log ) ) )
基本上问题是在 \path2document 我有多个文件,并且在每个文件中我都在寻找一个逗号。如果没有找到逗号,那么我想知道文件文本中是否有特定的字母。如果找到文本,我将先前定义的变量设置为 TRUE,而不是 FALSE。但是,如果语法不同(%errorlevel%==0,%errorlevel% EQU 0),“if errorlevel == 0”可以为真,并且它不会将变量 pdfREP 设置为 TRUE。如果问题是直到循环迭代之后才设置变量,那么我如何在其余代码中使用这个变量?我想稍后使用这个变量,所以设置它是最重要的。感谢您的任何反馈。