批处理文件,用于检测是否启用了wifi适配器

时间:2013-06-06 13:45:50

标签: cmd wifi wlan netsh

我尝试在cmd中完成此命令,但我无法修复它。任何人都可以帮助我吗?

netsh wlan show networks | FIND "turned off" /I /C
if "dont know what should be here" == 0 (
echo   enabled
) else (
echo  disabled
)
pause

3 个答案:

答案 0 :(得分:1)

您正在寻找%errorlevel%变量,该变量指示上次执行的命令的退出状态(在您的情况下为find)。但是,您必须恢复逻辑,因为当禁用适配器时,find返回0(即“成功”)。另外,我建议进行数字比较(equ)而不是字符串比较(==)。

if %errorlevel% equ 0 (
  echo disabled
) else (
  echo enabled
)

答案 1 :(得分:0)

您所要做的就是尝试启用它,无论是否已启用

netsh接口设置接口名称="适配器名称" admin = enable || echo已启用

如果适配器已经启用,那么它不会做任何事情,所以双管道||意味着如果第一个命令中出现错误,它将执行后面的任何命令,即echo已经启用。"

如果它说"这个网络连接不存在"忽略这一点,这意味着适配器已经启用。

答案 2 :(得分:0)

我把这个代码放在一起用于批处理脚本。它就像一个魅力来打开/关闭我的无线网络连接:

netsh wlan show networks | FIND "Wireless network connection" /I /C
if %errorlevel% equ 1 (wmic path win32_networkadapter where NetConnectionID="Conexión de red inalámbrica" call enable) else (wmic path win32_networkadapter where NetConnectionID="Wireless network connection" call disable)

如果您有多个无线网络连接,请更改您的特定网络连接名称的名称。