Batch file 对于%%a in()问题

Batch file 对于%%a in()问题,batch-file,for-loop,Batch File,For Loop,我无法使批处理脚本按预期工作 请参阅下文: for %a in (5) do if not exist "%USERPROFILE%\%username%11.txt" ( IPConfig|FindStr/IRC:"IPv4.*: 10\.0\.%a\.*">Nul 2>&1 && call %LOGONSERVER%\netlogon\printmapsyd.bat ) else ( echo Checking Printers... )

我无法使批处理脚本按预期工作

请参阅下文:

for %a in (5) do if not exist "%USERPROFILE%\%username%11.txt" (
  IPConfig|FindStr/IRC:"IPv4.*: 10\.0\.%a\.*">Nul 2>&1 && call %LOGONSERVER%\netlogon\printmapsyd.bat
  ) else (

  echo Checking Printers... )
脚本应该只检查数字5,但它可以使用505005000等等。如何限制只检查5


提前谢谢

根据OP的说法,这是可行的:

for %a in (5) do if not exist "%USERPROFILE%\%username%11.txt" (
  IPConfig|FindStr/IRC:"IPv4.*: 10\.0\.%a\..*">Nul 2>&1 && call %LOGONSERVER%\netlogon\printmapsyd.bat
  ) else (
  echo Checking Printers...
  )

所以有一个。在正则表达式中丢失。5的正确正则表达式应该是IPv4.*:10\.0\.5\..*,那么。

您是否尝试过IPv4.*:10\.0\.%a\..*?是的,我也尝试过。使用5的工作正则表达式应该是什么样子?@yacc,是正确的。你需要两次月经。我像那样测试了它,它很有效。@yacc。你是个传奇人物!它按预期工作。非常感谢。