Arquivo em lote para detectar quando um dispositivo se conecta a um ponto de acesso sem fio hospedado em um laptop

Arquivo em lote para detectar quando um dispositivo se conecta a um ponto de acesso sem fio hospedado em um laptop

Criei um ponto de acesso sem fio no meu laptop usando:

netsh wlan start hostednetwork

Isso funciona perfeitamente.

Eu tenho um Raspberry Pi que se conecta automaticamente a essa rede, mas leva um tempo bastante aleatório (embora pequeno) para conectar. Existe uma maneira de pausar o arquivo em lote até que ele "detecte" que o Raspberry Pi está conectado ao ponto de acesso? Ou devo simplesmente inserir uma pausa de 60 segundos para garantir a conexão, o que seria menos ideal?

Responder1

Felizmente, depois de pesquisar mais, encontrei uma solução:

De outro tópico no stackoverflow... crédito para paxdiablo

@setlocal enableextensions enabledelayedexpansion
@echo off
set ipaddr=%1
:loop
set state=down
for /f "tokens=5,7" %%a in ('ping -n 1 !ipaddr!') do (
    if "x%%a"=="xReceived" if "x%%b"=="x1," set state=up
)
echo.Link is !state!
ping -n 6 127.0.0.1 >nul: 2>nul:
goto :loop
endlocal

informação relacionada