脚本或 powershell 或批处理文件来选择并连接到特定的 SSID

脚本或 powershell 或批处理文件来选择并连接到特定的 SSID

有人知道在 Windows 10 中以编程方式选择(即连接到)特定 SSID/wifi 网络的方法吗?我有几个使用/测试案例,需要在流程的不同点连接到不同的 SSID。

我对具体方法(批处理文件、powershell 脚本、注册表黑客等)非常灵活,只要它是我可以在某种类型的脚本中自动执行的东西。

说得更严谨一点:我需要脚本来连接到该 SSID 并获取 DHCP 地址,就像我用鼠标单击“连接”一样。

该脚本的简化版本将是这样的:

  1. 做一些事情
  2. 连接到 SSID/网络“foo”
  3. 要么睡眠足够长的时间来确保我们获得了 IP 地址,要么(也许更理想)等待某个事件?
  4. 做一些不同的事情
  5. 连接到 SSID/网络“bar”
  6. 再次等待/验证我们已切换并从“bar”网络获取了新的 IP 地址
  7. 做一些其他不同的事情。

答案1

是的,您可以在普通批处理文件中执行此操作(注意:您可能需要提升权限才能运行脚本)。基本流程可能如下所示:

netsh wlan connect <name>
wait1:
ping -n 1 <server.name>
if %errorlevel% == 0 goto action1
goto wait1
action1:
<do something interesting here>
netsh wlan disconnect
netsh wlan connect <name2>
wait2:
ping -n 1 <server.name2>
if %errorlevel% == 0 goto action2
goto wait2
action2:
<do something interesting here>

如果您想引入定时延迟,您也可以执行以下操作:

ping -n 10 ::1 > nul

这会产生 10 秒的延迟并丢弃输出。

相关内容