当脚本检测到是否存在活动的互联网连接时,我正在尝试得到一个脚本来执行它。这就是我想出的,但是当其中一个if语句没有运行时,我会得到一个语法错误。
for /f "delims=" %%a in ('netsh interface show interface ^| find /I "Enabled Connected"') do @set netsh_output=%%a
SET /P internet_connected="false"
IF "%netsh_output%"=="Enabled Connected Dedicated WiFi" (
SET /P internet_connected="true"
)
IF "%netsh_output%"=="Enabled Disconnected Dedicated Ethernet" (
SET /P internet_connected="true"
)
if "%internet_connected%"=="true"(
ECHO connected
)
当我有Wifi时,它可以工作,但是由于我没有以太网,而第二个没有运行,它会无缘无故地引发语法错误。我没看到我该做的事吗?
C:\Users\ohheyit'sme\Desktop>IF "Enabled Connected Dedicated WiFi" == "Enabled Connected Dedicated WiFi" (SET /P internet_connected="true" )
true
C:\Users\ohheyit'sme\Desktop>IF "Enabled Connected Dedicated WiFi" == "Enabled Disconnected Dedicated Ethernet" (SET /P internet_connected="true" )
The syntax of the command is incorrect.
C:\Users\ohheyit'sme\Desktop>if "false"=="true"(
发布于 2017-08-22 00:17:33
排印错误
if "%internet_connected%"=="true"(
应该是
if "%internet_connected%"=="true" (
IF "%netsh_output%"=="Enabled Disconnected Dedicated Ethernet" (
应该是
IF "%netsh_output%"=="Enabled Connected Dedicated Ethernet" (
误用set /p
如果您想设置一个变量,不请求输入,不要使用标志。
set Foo=Bar
这将设置带有Foo
字符串的变量Bar
。
set /p Foo=Bar
这将变量Foo
设置为用户的输入。
https://stackoverflow.com/questions/45807161
复制相似问题