bat 脚本检查蜂窝连接状态然后在连接时显示 IP 或如果不在蜂窝上则显示未连接的问题

Issue with bat script checking cellular connection status and then displaying IP if connected or displaying not connected if not on cellular

我已经对此进行了一段时间的修改,但我无法在脚本中使其完全发挥作用。如果我 运行 单独命令它们按预期工作...任何帮助将不胜感激。提前致谢!

    cls
    @echo off

    set celValue=

    for /f "tokens=3 delims=: " %%a in ('netsh mbn show connection interface^="Cellular"^| findstr 
    "Interface"') do set celValue=%%a

    if "%celValue%"=="Connected" (for /f "tokens=3 delims=: " %%i in ('netsh interface ip show config 
    name^="Cellular"^| findstr "IP Address"') do echo Cellular IP: %%i) else (echo Cellular not 
    connected)
    
    pause

我无法对此进行测试,因为我在此设备上没有宽带连接。所以你需要为我们做测试。因此,除了评论中显示的转义问题外,您带括号的代码块的格式不正确。

cls
@echo off
set celValue=

for /f "tokens=3 delims=: " %%a in ('netsh mbn show connection interface^="Cellular" ^| findstr /I "Interface"') do set celValue=%%a
    if "%celValue%"=="Connected" (
        for /f "tokens=3 delims=: " %%i in ('netsh interface ip show config name^="Cellular" ^| findstr /I "IP Address"') do (
            echo Cellular IP: %%i
   )
  ) else (
    echo Cellular not connected
 )
pause