gpt4 book ai didi

batch-file - Set/P上的批处理脚本错误

转载 作者:行者123 更新时间:2023-12-03 08:08:05 25 4
gpt4 key购买 nike

我正在尝试让脚本在检测到是否存在有效的互联网连接时执行某些操作。这是我想出的,但是当其中一个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"(

最佳答案

打印错误

if "%internet_connected%"=="true"(

应该
if "%internet_connected%"=="true" (
IF "%netsh_output%"=="Enabled        Disconnected   Dedicated        Ethernet" (

应该
IF "%netsh_output%"=="Enabled        Connected   Dedicated        Ethernet" (

滥用 set /p
而且,如果要设置变量 而不要求输入,请不要使用/p标志
set Foo=Bar

这将使用字符串 Foo设置变量 Bar
set /p Foo=Bar

这会将变量 Foo设置为用户的输入。

关于batch-file - Set/P上的批处理脚本错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45807161/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com